Entwickler-Ecke

Dateizugriff - TMemo in *.ini speichern?


[vsc]PrimeTime - So 19.10.03 20:20
Titel: TMemo in *.ini speichern?
Hi Leudz,
Ich will für mein Programm nicht nur edits und captions, sondern auch zwei Memo-Komponenten in einer *.ini datei speichern.

Geht das??

Wenn Ja, wie??

Thxx in advance

PrimeTime


Delete - So 19.10.03 21:53

Zeilenumbrüche werden nicht gehen.


ckurz - So 19.10.03 22:19

Den Inhalt von einem Memofeld kannst du in einer Textdatei speichern (auch mit Zeilenumbrüchen):


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
var textdatei: text;
    i: integer;
begin
   assignfile(textdatei, 'test.txt');
   rewrite(textdatei);
   for i := 1 to memo.lines.count do
      writeln(textdatei, memo.lines[i - 1];         
   closefile(textdatei);
end;


Killmag10 - So 19.10.03 22:31

ckurz hat folgendes geschrieben:
Den Inhalt von einem Memofeld kannst du in einer Textdatei speichern (auch mit Zeilenumbrüchen):


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
var textdatei: text;
    i: integer;
begin
   assignfile(textdatei, 'test.txt');
   rewrite(textdatei);
   for i := 1 to memo.lines.count do
      writeln(textdatei, memo.lines[i - 1];         
   closefile(textdatei);
end;


Das geht auch viel einfacher !


Delphi-Quelltext
1:
memo1.Lines.SaveToFile('C:/test.txt');                    


aber das meint er nicht !


mann könnte die ini aber so gestallten:


Quelltext
1:
2:
3:
4:
5:
6:
[test]
memoz1=Zeile1
memoz2=Zeile2
memoz3=Zeile3
edit1=Zeile1
edit2=Zeile1



Zum schreiben:


Delphi-Quelltext
1:
2:
3:
4:
5:
...

For z1:=0 to (memo.Lines.Count-1do ini.WriteString('Test','Memoz'+inttostr(z1),memo.Lines[z1]);

...


Zum lesen:


Delphi-Quelltext
1:
2:
3:
4:
5:
...

For z1:=0 to (memo.Lines.Count-1do memo.Lines.add(ini.ReadString('Test','Memoz'+inttostr(z1),'-'));

...


superchatti - Mo 20.10.03 21:52

es geht aber auch viel einfacher!!!

WIe wäre es mit:


Delphi-Quelltext
1:
ini.WriteString('Memo','Text',Memo1.Lines.CommaText);                    


Das ist doch einfacher oder??