Also ich bin es "gewohnt" eigene Dateien in einem Objekt bzw. Record zu definieren und dann via FileStream das ganze
zu Speichern (Stream.Write....).
Bei Strings mache ich das meistens so:
Delphi-Quellcode:
TMeineDatei = record
...
_String : String;
...
end;
...
var fs : TFileStream
begin
fs := TFileStream.Create('datei.txt');
fs.Write(Length(Record._String), SizeOf(Integer));
fs.Write(Pointer(Record._String)^, Length(Record._String));
...
end;
wegen der Zeile
fs.Write(Pointer(Record._String)^, Length(Record._String));
wurde ich schonmal gefragt warum ich das so mache es sei doch das selbe wie
fs.Write(Record._String), Length(Record._String));
kann ich nicht sagen... so wie ich es mache funktioniert es in 100% der fälle - anders bekomm ich gelegentlich ne zugriffsverletzung.
BTT:
Ist es mit dieser Variante immer möglich eine Typisierte Datei auszulesen (vorrausgesetzt die Struktur ist bekannt)? Oder gibt es verschiedene Varianten die Datei zu spiechern / laden?
Danke, Daniel
[Edit: mein deutsch verbesser ^^]