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

解決


パスコ  2006-11-24 11:54:39  No: 24041

畏れ入ります。

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

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

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

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

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

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


かみづ  2006-11-24 12:08:22  No: 24042

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

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

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


パスコ  2006-11-25 08:55:29  No: 24043

かみづさん

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

うまく出来ました。

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

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


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加