TStringlist SavetoFile

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
malabarista
Beiträge: 321
Registriert: Sa 11. Jun 2016, 12:16
OS, Lazarus, FPC: Linux Mint 18.1 L1.6.2-1 FPC 3.0.0
CPU-Target: 64Bit
Wohnort: Konstanz

TStringlist SavetoFile

Beitrag von malabarista »

Hallo,

bei TSTringlist kann man mittels SavetoFile immer eine Stringliste in eine Datei schreiben.
Ich möchte aber diese Stringliste immer an eine Datei anfügen (=append), statt neu hineinschreiben.
Gibt es dafür auch eine Funktion ?

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: TStringlist SavetoFile

Beitrag von MacWomble »

Ich denke, das geht nur mit zeilenweisem Schreiben:
https://www.experts-exchange.com/questi ... elphi.html
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: TStringlist SavetoFile

Beitrag von wp_xyz »

Oder in einen FileStream schreiben, der zu Beginn des Schreibens ans Ende vorgespult wird:

Code: Alles auswählen

var
  stream: TFileStream;
...
  if FileExists(AFileName) then
    stream := TFileStream.Create(AFilename, fmOpenWrite)
  else
    stream := TFileStream.Create(AFilename, fmCreate);
  try
    stream.Position := stream.Size;
    StringList.SaveToStream(stream);
  finally
    stream.Free;
  end;
Zuletzt geändert von wp_xyz am Do 2. Mai 2019, 15:03, insgesamt 1-mal geändert.

sstvmaster
Beiträge: 575
Registriert: Sa 22. Okt 2016, 23:12
OS, Lazarus, FPC: W10, L 2.2.6
CPU-Target: 32+64bit
Wohnort: Dresden

Re: TStringlist SavetoFile

Beitrag von sstvmaster »

wp_xyz hat geschrieben:... ans Ende vorgespult wird ...

Na zum Glück haben wir nicht mehr solche Speicher, sonst würde das "Vorspulen" etwas länger dauern.
https://upload.wikimedia.org/wikipedia/commons/9/9f/IBM_System_360_tape_drives.jpg :lol:
LG Maik

Windows 10,
- Lazarus 2.2.6 (stable) + fpc 3.2.2 (stable)
- Lazarus 2.2.7 (fixes) + fpc 3.3.1 (main/trunk)

malabarista
Beiträge: 321
Registriert: Sa 11. Jun 2016, 12:16
OS, Lazarus, FPC: Linux Mint 18.1 L1.6.2-1 FPC 3.0.0
CPU-Target: 64Bit
Wohnort: Konstanz

Re: TStringlist SavetoFile

Beitrag von malabarista »

ok, - alles klar.
Dankeschön !

Antworten