テキストファイルのデータを一部書き換えるには?

解決


ちんじゅう  2002-11-28 23:58:12  No: 2238  IP: [192.*.*.*]

9月のhatenaさんと同じような質問なのですがテキストデータの数MByteあるファイル
1部(1レコード)を書き換えたいのです。
1行ずつ固定長のレコードになります。
この操作にメモリを占有できないため、
TstringList以外で何かよい方法はありませんでしょうか?
ちなみに開発環境はDelphi5です。
宜しくお願いします。

編集    削除
にしの  2002-11-29 00:11:20  No: 2239  IP: [192.*.*.*]

固定長レコードであれば、TFileStreamで換えたい場所にSeekしてWriteすればよいと思います。
ヘルプでTFileStreamを調べてみてください。

また、APIでも、CreateFileしてSetFilePointerで移動しWriteFileすれば同じことができます。
# CreateFile,SetFilePointer,WriteFile,CloseHandleはWIN32APIです。
WIN32APIのヘルプを見てください。

編集    削除
ちんじゅう  2002-11-29 03:39:53  No: 2240  IP: [192.*.*.*]

早急なお返事ありがとうございますです。
なるほど・・・TFileStreamは驚くほど簡単なコードでちょっと驚きました。
次はAPIの方に挑戦してみたいと思います。
☆ありがとうございました☆

編集    削除