Ich würde Dir einen FileStream empfehlen. Da kannst Du nacheinander das reinschreiben was Du möchtest und bist nicht an eine bestimmte RecordStruktur gebunden ... Vorrausgesetzt Dein einlesender Part weiß was er wie zu lesen hat.
Delphi-Quellcode:
...
var
lFileStream: TFileStream;
i: integer;
lStr: string;
begin
lFileStream := TFileStream.Create('C:\Testfile', fmCreate);
try
lStr := 'Das ist ein String';
i := length(lStr);
lFileStream.WriteBuffer(i, sizeOf(i));
lFileStream.WriteBuffer(PChar(lStr)^, i);
finally
lFileStream.Free;
end;
end;
...
Da wird zuerst die Länge des Strings und anschließend der String selbst in die Datei gespeichtert. Der auszulesende Teil muss also wissen, dass er zuerst die Länge und dann darauf basierend den String lesen soll.