Um das ganze mit einem Texteditor lesen zu können ist das sicher eine schöne Variante. Da aber auch ein JPEG mit in die Datei soll bietet es sich an alles binär zu speichern.
ungetesteter Code:
Delphi-Quellcode:
var
lStream: TStream;
lStartPos: Int64;
lDataSize: Cardinal;
begin
lStream := TFileStream.Create(YourFileName, fmCreate);
try
// Memo speichern
lStartPos := 0;
lStream.Position := lStream.Position + sizeof(lDataSize);
YourMemo.Lines.SaveToStream(lStream);
lDataSize := lStream.Position - lStartPos - sizeof(lDataSize);
lStream.Position := lStartPos;
lStream.Write(lDataSize, sizeof(lDataSize));
// JPG speichern
lStartPos := lStream.Size;
lStream.Position := lStream.Position + sizeof(lDataSize);
YourJPG.SaveToStream(lStream);
lDataSize := lStream.Position - lStartPos - sizeof(lDataSize);
lStream.Position := lStartPos;
lStream.Write(lDataSize, sizeof(lDataSize));
finally
lStream.Free;
end;
[Edit]
Wenn etwas unklar ist am Quelltext bitte nachfragen (nichts ist schlimmer als einfach abzutippen anstelle zu verstehen)