Einzelnen Beitrag anzeigen

drunky1337

Registriert seit: 19. Mär 2013
Ort: Künzelsau
5 Beiträge
 
Delphi XE3 Architect
 
#4

AW: ASCII-String und Binärtdaten in eine Datei schreiben

  Alt 10. Jun 2013, 13:57
Wenn du aus einem Stream liest in den du gerade geschrieben hast, muss du den Streamzeiger wieder zurücksetzen:
Delphi-Quellcode:
Stream := getBinaryData(file_one);
Stream.SaveToFile('C:\EDMSWAP\Data.hdf');
Stream.Position := 0; // <==
Header.LoadFromStream(Stream);
PS: ich hör schon aus der Ferne, wie deine Hand auf die Stirn klatscht
Das mit der Position hatte ich auch schon versucht, das Ergebnis war leider trotzdem das gleiche.

Mit Hilfe von DeddyH seiner Idee habe ich mein Problem nun lösen können.

Delphi-Quellcode:
  DataStream := TMemoryStream.Create;
  Header.SaveToStream(DataStream);
  Stream := getBinaryData(file_one);
  Stream.SaveToStream(DataStream);
  DataStream.SaveToFile('C:\EDMSWAP\FullStream.hdf');
Ich schreibe jetzt in meinen neuen DataStream zuerst die StringList und anschließend die Binärdaten. Wenn ich jetzt diesem Stream als Datei abspeichere habe ich meine gewünschte Datei.

Vielen Dank für die schnellen Antworten
Arthur
  Mit Zitat antworten Zitat