私の質問は、n個のファイルが与えられた一定量のファイルのみを読み込もうとしていることです。Cのファイルから特定の量の行を読み込む方法
例えば、私はその後、内側に以下の内容を持つ2つのファイル
TEST1を持っている:
猫は
test2はアップル
をオフに走っ:
少年が家に帰った
猫 をオフに走った:猫ではないtest1のは
をオフに走っ:個の
りんごは
私は出力が
test1のようにしたい赤
test2:リンゴは赤色です
これは私がこれまでに書いたコードです:
#include <stdio.h>
#include <string.h>
int main (int argc, char ** argv)
{
extern int searcher(char * name, char*search,int amount);
while(argc != 0){
if(argv[argc] !=NULL)
if(searcher(argv[argc],"a",1)) break;
argc-- ;
}
}
int searcher(char * name, char*search,int amount){
FILE *file = fopen (name, "r");
int count = 0;
if (file != NULL) {
char line [1000];
while(fgets(line,sizeof line,file)!= NULL && count != amount)
{
if(strstr(line,search) !=NULL){
count++;
if(count == amount){
return(count);
}
printf("%s:%s\n", line,name);
}
}
fclose(file);
}else {
perror(name); //print the error message on stderr.
}
return(0);
}
はfgets'がで行を読み込み、 '覚えておいてください(カウンター
あなたは何を意味するのか教えてもらえますか?上記のコードに編集を追加してください。 –
もちろん、例を挙げる前に、各ファイルから何本の行を読みたいのですか?または各ファイル内で用語を検索していますか?あなたが検索をしようとしているようですが(それは問題ありません)、ファイルから 'X'個の行を厳密に読み取ることとは別に、離れています。あなたは両方をする必要がありますか? –