Einzelnen Beitrag anzeigen

Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Delphi: Sofortiges Abspeichern von Text in Textdatei

  Alt 18. Dez 2007, 14:33
Du hast mehrere möglichkeiten
1. Über eine StringList
Delphi-Quellcode:
var sl: TSTringList;
begin
  sl:=TStringList.Create();
  try
    sl.Add(MyString);
    sl.SaveToFile(ExtractFilePath(ParamStr(0))+'hallo.txt');
  finally
    sl.Free;
  end;
end;
2. Über die einfachen File-Funktionen
Delphi-Quellcode:
var f: TextFile;
begin
  AssignFile(f, 'c:\pfad\zur\datei.txt');
  ReSet(f);
  WriteLn(f, MyString);
  CloseFile(f);
end;
3. Über einen File-Stream
Delphi-Quellcode:
var fs: TFileStream;
begin
  fs:=TFileStream.Create('Pfad', fmOpenWrite);
  try
    fs.Seek(0, soFromBeginning); //Bin mir nicht ganz sicher ob OpenWrite auf anfang der Datei springt oder nicht, deshalb zur Sicherheit...
    fs.Write(MyString[1], Length(MyString));
  finally
    fs.Free;
  end;
end;
Mein Delphi, stelle ich gerade fest, ist ein wenig eingerostet
Ist ungetestet, zur näheren Erläuterung benutze bitte die Suche oder frag.
€dit: Oha, also angefügt.
Dazu einfach vorher sl.LoadFromFile laden, der rest bleibt. Beim FileStream einfach soFromBeginning durch soFromEnd ersetzen und noch #13#10 als String für Zeilenumbruch speichern, bei der AssignFile-Methode einfach ReSet mit ReWrite ersetzen, glaube ich.
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat