Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#18

AW: Memo in ini ein- und auslesen

  Alt 17. Jun 2013, 10:12
Hallo,

wenn Du nur einen Wert aus der Ini-Datei ins Memo haben willst, dann ist delimitedText vollkommen überflüssig.

Dieshier sollte dann ausreichen:
Delphi-Quellcode:
//speichern
ini.writestring('section', 'memo', memo1.lines.Text);

//laden
memo1.lines.Text := ini.Readstring('section', 'memo', '');
Wenn Du was anderes meinst, dann stelle hier bitte mal eine vollständige INI-Datei ein und beschreibe genau, welchen Teil daraus Du in das Memo einlesen und welchen Teil Du in die INI-Datei schreiben möchtest. So, wie es momentan aussieht, würde für die Erledigung Deiner Aufgabe auch ein TEdit ausreichen.

Sollte Dein Anliegen sein, einen beliebigen, mehrzeiligen Text aus einem Memo in eine Ini-Datei zu schreiben, so geht das nicht mit den zur Verfügung stehenden Methoden.
Einen ganzen Bereich kannst Du zwar mit ini.ReadSection('section', memo.lines); lesen, aber es gibt keine (vorgefertigte) Methode, um dies zu schreiben. Hier könntest Du eventuell hergehen und zuerst den Bereich mit ini.EraseSection('section'); löschen, müsstest dann aber die INI-Datei (z. B. mit einer Stringliste) vollständig lesen, dann den Text aus dem Memo dort anfügen und anschließend die vollständige INI-Datei schreiben. Das könnte ungefähr so aussehen:
Delphi-Quellcode:
begin
  ini.EraseSection('section');
  sl := TStringlist.Create;
  sl.LoadFromFile(ini.Filename);
  sl.AddStrings(memo.Lines);
  sl.SaveToFile(ini.Filename);
  sl.Free;
end;
(Das ist ungetestet dahingeschrieben.)
  Mit Zitat antworten Zitat