2016-10-22 9 views
0

これは本当に簡単な問題なので、わかりやすいものは見当たりませんが、わかりません。私は単にfgetsを使って行ごとにテキストを読み込もうとしていますが、私はファイルヘッダに関連していると思われる追加情報を取得しています。fgetsの予期しないヘッダー情報

かいつまんで、私はつまり、単に1行につき1つの小数点以下の桁であるナノを使用して、新しいテキストファイルを作っ:

2 
8 
3 
4 
... 

ファイルを読むために私のコードは次のとおりです。ただし

char line[20]; 
FILE * fp; 
fp = fopen(infile, "r"); 
if (fp == NULL) 
    exit(EXIT_FAILURE); 
while(fgets(line, sizeof(line), fp)) { 
    ... do some stuff ... 
} 
fclose(fp); 

返される最初の行は"\177ELF\002\001\001"であり、終了するまでのすべての行は空の""です。

私は何を期待していないのですか? nanoを使ってファイルを作成したのは、私が欲しくない余分な見出しのジャンクを紹介したのでしょうか?もしそうなら、どうすればこの問題を回避できますか?

+2

「infile」とは何ですか? 'infile'にELFファイルへのパスが含まれているかのように見えます。 – Downvoter

+1

出力機能が表示されません。 [mcve]はどこですか? – Olaf

+0

この質問を削除するほうがよいでしょう。他の誰かを助けることはまずありません。 –

答えて

-1

ここで間違ったファイルを読んでいます。多くのシステムでELFファイルとも呼ばれる実行可能ファイルは、 "¥177ELF¥002¥001¥001"で始まります。したがって、infileの値が正しくないと言うのは安全です。

0

うわー私はダンパーです...私はELFタグがtxtファイルで何をしているのか疑問に思っていましたが、関数自体をファイル名で実装したスクリプトをチェックするにはあまりにも不注意でした。名前を変更してそのファイルを更新するのを忘れた

関連する問題