- 締切済み
C言語プログラム
.txtファイルのデータを読み込んで処理するプログラムを作っているのですがやり方がわかりません。 .txtファイルには 1 1.0043 34 744 0.001 7 1.0053 36 733 0.024 4 1.0056 62 621 0.003 . . . と百行くらいのデータがあります。 このデータを読み込んで3行目の2桁の数字だけを取り出す作業ができません。 34 36 62 このようにしたいのですがわかる方教えてください、お願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
こんにちは。 私の場合は行数範囲がある程度限られているので、 3行目の2桁とかにこだわらずそのまんま構造体にぶち込みます。 そうすると後々の応用が利くようになります。 流れとしては ・ファイルを開く ・ファイル行が無くなるまで構造体に格納する ・ファイルを閉じる という流れになると思います。 以上、ご参考までに。
- asuncion
- ベストアンサー率33% (2127/6289)
#1の者です。 > 整数△浮動小数点数△整数△整数△浮動小数点数 ここまでガチガチでなくても、「5つのフィールドがあって、3つ目が整数」 という形式ならば、不要なフィールドは文字列と認識して、例えば fscanf(fp, "%*s%*s%d%*s%*s", &n); とでもすれば、3つ目のフィールドを整数値と認識してnに格納します。 もっとスマートな方法があるかもしれません。
- asuncion
- ベストアンサー率33% (2127/6289)
> 3行目の2桁の数字 3列目、という方がとおりがよいと思います。 テキストファイルのフォーマットは、 整数△浮動小数点数△整数△整数△浮動小数点数 で固定ですか?(△:空白)
補足
はい、テキストファイルのフォーマットは、 整数△浮動小数点数△整数△整数△浮動小数点数 です。 このフォーマットで長々と何百行と続きます。