数字の羅列した単純なテキストファイルを読み込ませたいのですが、
以下のようにすると、途中で改行などで一行あけた場合、そこで読むのを
ストップしてしまいます。
if (fgets(buf, sizeof(buf), fp) == NULL) {
改行にくじけることなく、ファイルの最後まで読み込ませるにはどうしたら
いいのでしょうか。
ちなみに、以下のようにやると、
while(getc(fp) != EOF){
こんどは改行をものともせず、ファイルのお終いまで読んでくれるのですが、
2バイト文字(頭一文字が化ける)、のっけ一行目に数値(10桁)を置くと
一文字かけて9桁になってしまいます。
2行目以降はちゃんと10桁です。(一行目に改行をいれて、2行目以降に書くと大丈夫のようです。変)
簡単なようで、つまってます。どうかよろしくお願いします。
No.2
- 回答日時:
while(!feof(fp)){
fgets(buf, sizeof(buf), fp)
}
は,どうでしょうか.
または,1文字をバッファに戻すことができますので,
while(getc(fp) != EOF){
ungetc(fp);
/*つづき*/
}
とやれば,欠けないでしょう.
ungetc(fp)は,1文字をバッファに戻す関数です.
No.3ベストアンサー
- 回答日時:
fgets は空行があっても NULL を返さないと思いますが。
環境は何ですか?
#include <stdio.h>
int main()
{
char buf[256];
FILE *fp;
fp = fopen("test.txt", "r");
while (fgets(buf, sizeof(buf), fp)) {
printf("%s", buf);
}
fclose(fp);
return 0;
}
/* test.txt */
123
456
/* 実行結果 */
123
456
/* 環境 */
Windows 2000, BCC 5.5
サンプルまでご提供いただきまして、本当にありがとうございます。
確認実行し、無事解決しました。
尚、環境は VC++6.0 Windows2000 でした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- PHP PHPでテキストファイルに保存した時の改行問題 1 2022/11/19 15:07
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- Visual Basic(VBA) フォルダの場所を可変にしたいです(マクロ) 4 2023/05/11 10:00
- UNIX・Linux テキストファイルをページ番号付きでコマンドラインから印刷したい 1 2023/02/22 12:47
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- C言語・C++・C# 至急お願いします。C言語で.imgのファイルを読み込んで1バイトづつ出力するプログラムを作りたいので 3 2023/01/16 22:49
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エラーがわかりません、、
-
ファイルへの書込み処理が異常...
-
c言語 ファイルから数字を読み...
-
ファイルに行番号を追加
-
c言語でのfscanfについて
-
ガンマ変換 C言語でプログラ...
-
ファイルの特定行の抽出
-
ファイル読み込み EOF 判定
-
Cで文字列の分割
-
2÷3などの余りについて
-
C言語で%を使わない余りの出し方
-
比較回数と交換回数表示について
-
信頼区間の1.96や1.65ってどこ...
-
nCmの関数
-
複数桁10進数の*桁目だけを抽出...
-
Notepad++の関数リスト表示の変...
-
C言語のfor文です。 繰り返しの...
-
break文でループを一気に抜ける...
-
正負を反転させて出力するプロ...
-
#define _CRT_SECURE_NO_WARNIN...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
c言語でのfscanfについて
-
C言語でファイル読み書きを早く...
-
fopenでファイル名に、変数を使...
-
複数ファイルの同時読み込みの...
-
fgets( ) の返り値は何?
-
テキストファイル内に対して, ...
-
ファイルへの書込み処理が異常...
-
C言語にてXMLファイルから任意...
-
ファイル出力で改行を入れたい!
-
C言語でセグメンテーションエ...
-
エラーがわかりません、、
-
ガンマ変換 C言語でプログラ...
-
自己相関関数を求めるプログラ...
-
VisualStudioでのファイルの入...
-
同時にファイル読み込み 書き込み
-
c言語 ファイルから数字を読み...
-
大量の入力ファイルを扱うとき...
-
ファイルが読み込めない・・・
-
【C言語】ファイルを読み込んで...
-
a*(1-exp(-bx))+cの近似の方法
おすすめ情報