私は単語を抽出する必要がある入力ファイルがあります。単語には文字と数字しか含めることができないため、他のものは区切り文字として扱われます。私はfscanf、fgets + sscanf、strtokを試しましたが、何も動かないようです。Cでファイルを読む
fscanf(file,"%[A-z]",string);
それは罰金最初の単語を読み取りますが、ファイルポインタがとても巻き戻し続け:私はこの行を置き換えて、それは任意の区切り文字を使用しないため1以上
while(!feof(file))
{
fscanf(file,"%s",string);
printf("%s\n",string);
}
は明らかに動作しません。最初の単語を何度も何度も読みます。
だから私は、最初の行を読み込み、sscanf関数を使用するためのfgetsを使用:この1つは動作しません
sscanf(line,"%[A-z]%n,word,len);
line+=len;
どちらか私は右の場所にポインタを移動することはできませんしてみてください何でもので。私はstrtokはを試みたが、私は明らかにdelimitters
while(p != NULL) {
printf("%s\n", p);
p = strtok(NULL, " ");
この1セットdelimitterとして、空白文字を取るが、私はdelimittersの文字通り数百を持ってする方法を見つけることができません。
ファイルから単語を抽出すると、最初は単純なコンセプトだったようですが、実際には何も試みませんか?
区切り文字は、a-zおよびA-Zを除くすべてです。 – Ihateparsing