テキストファイルに追加書き込みする方法

解決


パスコ  2006-11-24 02:54:39  No: 24041  IP: 192.*.*.*

畏れ入ります。

perl  や  シェル  ではファイルに追加書き込みしたい場合
>>
とやれば簡単に出来ますね。

delphiでこれをやろうとしているのですが、意外にうまくいかなくて困っています。

AssignFile( stf, FName );
Rewrite(stf);
Writeln( stf, allText);
CloseFile( stf );

このようにしたのですが、新規ファイルとして上書きされてしまいます。

ちょっと考えたのですが、
buffer  のような変数を作って
まずfileを読み込んで、
buffer  +  file
をfileに書き込む・・・

のようにすれば良いかな?と思ったのですが、
もっと簡単に出来る方法はありますでしょうか?

編集 削除
かみづ  2006-11-24 03:08:22  No: 24042  IP: 192.*.*.*

Rewriteは新規書き込み用ですよね。
代わりにAppendを使用するのだと思います。

またテキスト限定であればTStringListで簡単にできます。

var
  sl: TStringList;
begin
  sl := TStringList.Create;
  sl.LoadFromFile(FileName);
  sl.Add(allText);
  sl.SaveToFile(FileName);
end;

編集 削除
パスコ  2006-11-24 23:55:29  No: 24043  IP: 192.*.*.*

かみづさん

早速ありがとうございました!!

うまく出来ました。

Appendを使うと新規作成は出来ないのですね。
if文でファイルの存在を確認するように変更しました。

本当にありがとうございました!

編集 削除