C言語関係掲示板

過去ログ

No.1273 ファイル中のキーワードの検索

[戻る] [ホームページ]
No.16892

FILE*fp
投稿者---ポップ(2004/09/23 22:38:37)


ファイルを読み込んで、文字とキーワード(unit 30)
のような文字列をfgetsで読み込んで返した文字列の中からスペースの
後のキーワードを見つける方法を教えてください。



No.16893

Re:FILE*fp
投稿者---monkey(2004/09/24 00:23:35)


次のようなサンプルは参考になるでしょうか。
# 赤色フォントで書いた関数は全て標準ライブラリ関数なので、意味や使い方は参考書等で調べてください。
# 老婆心ながら、C言語だけでなく国語ももう少し勉強した方が良いと思います。

(1) "sample.txt"ファイルからスペース区切りの文字列を1行ずつ読み込む。
(2) 指定したキーワード"unit"と一致する単語があれば、"hit"と表示する。

#include <stdio.h>
#include <string.h>
#define BUFFSIZE  512

int main()
{
    const char* keyword = "unit";
    char buff[BUFFSIZE];
    FILE* fp = fopen( "sample.txt", "r" );
    if( fp == NULL )
    {
        return 1;
    }

    while( fgets( buff, BUFFSIZE, fp ) != NULL )
    {
        char* tok = strtok( buff, " " );
        for( ; tok != NULL; tok = strtok( NULL, " " ) )
        {
            if( strcmp( tok, keyword ) == 0 )
                puts( "hit" );
        }
    }
    fclose( fp );
    return 0;
}



No.16894

Re:FILE*fp
投稿者---ポップ(2004/09/24 00:40:18)


ありがとうございます!

参考にさせていただきます!

感謝です。