• ベストアンサー

ファイルの読み込みが遅い

VC++6で、CSVファイル読み込むプログラムを作成しています。件数は、1万件ほどで、ファイルサイズは、20MBぐらいです。 CFile&CArchiveで、一行ずつ読み込んでいるのですが、徐々に遅くなっていきます。これは、しょうがないのでしょうか? 改善する方法は、あるでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • zwi
  • ベストアンサー率56% (730/1282)
回答No.1

通常、CSVファイル20MBをメモリに読み込んだぐらいでは、速度低下(メモリスワップ)が発生するとは思えません(主メモリが128MB等、古いPCをお使いなら別ですが)。 私は、CArchiveを使ったことがありませんが、日ごろfopen()してfgets()やCStdioFileを使ってテキストファイルを読んでいて速度低下を感じたことはありません。 CArchive自体がメモリを大量消費するかぐらいしか原因は浮かびませんが、もしかすると全然関係ない原因(CPU負荷の増加)が別にあるのかもしれません。 実行中のメモリ消費量をチェックしてみることと、CStdioFileなどを使ったプログラムに書き換えてみてはどうでしょうか?

w0a15455
質問者

お礼

ほかのソース部分が原因でした。 お騒がせしました。申し訳ありません。 ありがとうございました。

関連するQ&A