C言語なら俺に開け! Part 〈54〉
■ このスレッドは過去ログ倉庫に格納されています
0141デフォルトの名無しさん
NGNG困ったことに。
コンバート元のフォーマットは
hoge /// piyo
hoge2 /// piyo2
のように見出し語とデータが「 /// 」で区切られている形になっています。で、
「hoge」の部分が11文字以上ならその行は削除するという方針で以下のように組んでみま
した。
が、これを走らせると出力サイズが8MBを超えたあたりで「"read"になることは
できませんでした」のエラーが出てしまいます。ちなみに変換元のテキストデータは20MB強。
fgetsなんかは、扱えるファイルサイズの上限なんかがあるんでしょうか?
int main()
{
FILE *rfp, *wfp;
char buf[4089];
wfp = fopen("d:\\convert.txt", "w");
if (rfp = fopen("D:\\eijirou\\waeiji.txt", "r")) {
while (fgets(buf, 4089, fp)) {
if ((strstr(buf, " /// ") - buf) <= 10) {
fprintf(wfp, buf);
}
}
}
fclose(rfp);
fclose(wfp);
}
■ このスレッドは過去ログ倉庫に格納されています