Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Ini-Datei und mehrzeiliger Text (https://www.delphipraxis.net/37797-ini-datei-und-mehrzeiliger-text.html)

Sadrax 10. Jan 2005 18:05


Ini-Datei und mehrzeiliger Text
 
Hallo, ich habe aus zwei TMemo's mit memo.Text, den Text in jeweils einen String gespeichert, diesen Text habe ich dann in eine IniFile gespeichert
Code:
text := memo.text;
ini.WriteString('Sektion', 'Eigenschaft', text);
Jetzt das Problem, er speichert in der Ini-Datei ja auch mehrzeilig ab, d.h. aber, das nur die erste Zeile von der Eigenschaft gelesen wird (genauso wird auch nur die erste Zeile der Eigenschaft gelöscht).
Wie kann man das ändern?
Oder kann man in einem String alle Zeilenumbrüche in ein Zeichen umwandeln und wieder umkehren?

shmia 10. Jan 2005 18:16

Re: Ini-Datei und mehrzeiliger Text
 
Zitat:

Zitat von Sadrax
Jetzt das Problem, er speichert in der Ini-Datei ja auch mehrzeilig ab, d.h. aber, das nur die erste Zeile von der Eigenschaft gelesen wird (genauso wird auch nur die erste Zeile der Eigenschaft gelöscht).
Wie kann man das ändern?
Oder kann man in einem String alle Zeilenumbrüche in ein Zeichen umwandeln und wieder umkehren?

Am Einfachsten die Daten vor dem Speichern in ihre hexadezimale Darstellung wandeln.
Nachteil: benötigt 2 Bytes pro Zeichen und es sieht in der Ini-Datei kryptisch aus.

Man kann die Zeilenumbrüche auch in die Escape-Sequenz /r/n wandeln.
Dazu benötigt man 2 Funktionen; z.B. StrEscapedToString und StrStringToEscaped aus der Unit JclStrings.
http://sourceforge.net/projects/jcl/

Sadrax 11. Jan 2005 18:59

Re: Ini-Datei und mehrzeiliger Text
 
Danke ich werde es mal mit der Hexadezimal-Darstellung versuchen.

Aenogym 11. Jan 2005 19:03

Re: Ini-Datei und mehrzeiliger Text
 
hi,

am leichtesten ist es folgendermaßen:

Delphi-Quellcode:
//speichern
ini.writestring('section', 'memo', memo1.lines.delimitedText);

//laden
memo1.lines.delimitedText := ini.Readstring('section', 'memo', '');
;) Aenogym

edi. schreibfehler :roll:

Sadrax 11. Jan 2005 19:49

Re: Ini-Datei und mehrzeiliger Text
 
Danke sehr! :-D
Ich hatte gerade das mit dem Hexadezimal gemacht, aber so geht es ja noch einfacher.
Merk ich mir aber trotzdem das mit dem umwandeln, falls ich mal kein Memo zur Verfügung habe :wink: .
Vielen Dank, wirklich :) .


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:35 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz