【掲示板ご利用上の注意】

 ※題名は具体的に!
 ※学校の課題の丸投げ禁止!
 ※ソースの添付は「HTML変換ツール」で字下げ!
 ※返信の引用は最小限に!
 ※環境(OSとコンパイラ)や症状は具体的に詳しく!
 ※返信付き投稿の削除は禁止!
 ※マルチポスト(多重投稿)は慎んで!

 詳しくはこちら


本当はこんなに大きく書きたくはないのですが、なかなか守っていただけなくて…。
 守ってくださいね。お願いします。(by管理人)

C言語ソース⇒HTML形式ツール掲示板2こちら


管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.22913

ファイルから読み込んだデータの抽出
投稿者---仁(2005/08/31 00:26:21)


-----------------------------------------------------------------
Hname: jpn.co.jp

diskquota size(K) %use  msgquota    msgs %use user
--------- ------- ----  --------    ---- ---- ----
    10000    1100   0%  no quota       0      j0001@jpn.co.jp
    10000     150   0%  no quota       0      j0002@jpn.co.jp

SUMMARY:
Number of users: 2
                  quota              Usage
----------+-------------------------------------
diskquota |     no limit                 0(k)
msgquota  |     no limit                 0

-----------------------------------------------------------------
Hname: usa.com

diskquota size(K) %use  msgquota    msgs %use user
--------- ------- ----  --------    ---- ---- ----
    10000     123   0%  no quota       0      u0001@usa.co.jp
    10000    4500   0%  no quota       0      u0002@usa.co.jp

SUMMARY:
Number of users: 2
                  quota              Usage
----------+-------------------------------------
diskquota |     no limit                 0(k)
msgquota  |     no limit                 0

-----------------------------------------------------------------
Hname: eur.com

diskquota size(K) %use  msgquota    msgs %use user
--------- ------- ----  --------    ---- ---- ----
    10000     100   0%  no quota       0      e0001@eur.co.jp
    10000     100   0%  no quota       0      e0002@eur.co.jp

SUMMARY:
Number of users: 2
                  quota              Usage
----------+-------------------------------------
diskquota |     no limit                 0(k)
msgquota  |     no limit                 0



上記の様なデータが幾重にも出力されているファイルから、データ
の取り出しを行っています。
Hnameの後に続く文字列毎に、diskquota、size(K)、userの項目の
値を取り出そうとしています。但し、Hnameが、”jpn.co.jp”のもの
だけとしたいのです。

結果としては、
10000,1100,j0001@jpn.co.jp
10000,150,j0002@jpn.co.jp
を求めています。

良い方法を教えて下さい




この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:ファイルから読み込んだデータの抽出 22915 かずま 2005/08/31 02:25:42


No.22915

Re:ファイルから読み込んだデータの抽出
投稿者---かずま(2005/08/31 02:25:42)


#include <stdio.h>
#include <string.h>

int main(void)
{
    char buf[256], user[256];  int quota, size;

    while (fgets(buf, sizeof buf, stdin))
        if (!memcmp(buf, "Hname: jpn.co.jp", 16)) 
            while (fgets(buf, sizeof buf, stdin) && memcmp(buf, "SUMMARY:", 8)) 
                if (sscanf(buf, "%d%d%*s%*s%*s%*s%s", &quota, &size, user) == 3)
                    printf("%d,%d,%s\n", quota, size, user);
    return 0;
}



この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧