Hallo. Ich möchte gern eine StringList abspeichern. Problem ist, das es keine normale Strinliste ist, sondern eines mit Objekten befüllt.
Schreiben tut der PC auch fein, aber er Speichert nur die Strings und nicht die Objekte ab. Wie kann ich das ändern, und wenn ich wieder aulese, habe ich statt Objekte halt nur den String (in diesen falle den Zahlenwert).
Zweite Problem ist bei untrigen Beispiel, das er mir einen String zurückgibt, der Quasi unendlich lang ist und nicht nur 1 Zeichen hat.
Code:
function TBefNachteil.Schreiben;
var Nachteil : TNachteil;
begin
LNachteil := TStringlist.create;
Nachteil := TNachteil.Create;
Nachteil.Name := 'Verkrazt';
Nachteil.Nr := 0;
LNachteil.AddObject(inttostr(Nachteil.Nr), Nachteil);
Nachteil := TNachteil.Create;
Nachteil.Name := 'Verbeult';
Nachteil.Nr := 1;
LNachteil.AddObject(inttostr(Nachteil.Nr), Nachteil);
Nachteil := TNachteil.Create;
Nachteil.Name := 'Beschmutzt';
Nachteil.Nr := 2;
LNachteil.AddObject(inttostr(Nachteil.Nr), Nachteil);
LNachteil.SaveToFile('Test.dat');
end;
function TBefNachteil.Lesen;
var s : String;
begin
LNachteil := TStringlist.Create;
LNachteil.LoadFromFile('Test.dat');
s := ((LNachteil.Objects[0] as TNachteil).name);
showmessage (s);
end;