Einzelnen Beitrag anzeigen

Muetze1
(Gast)

n/a Beiträge
 
#13

Re: MemoryStream in Filestream sichern - Datenschrott !?

  Alt 26. Sep 2007, 10:35
Zusammenfassend:

1. Streamposition vorher zurücksetzen, da Schreib- und Lesezugriffe den Positionszeiger versetzen.
2. CopyFrom() benutzen, da es sich um ein Objekt handelt und nicht um direkte Daten. Aber warum nutzt hier keiner (wie schon hier gepostet) als zweiten Parameter die 0? Schliesslich soll alles kopiert werden.
3. Akzeptiert aqDockingManager1.SaveToStream() wirklich nur einen MemoryStream oder doch vllt. einfach nur TStream? Weil warum nicht gleich den TFileStream angeben?

Wenn 3. nicht zutrifft:
Delphi-Quellcode:
procedure TForm10.dxBarButton7Click(Sender: TObject);
Var
   fs: TFileStream;
   ms: TMemoryStream;
Begin
   ms := TMemoryStream.Create;
   try
     aqDockingManager1.SaveToStream(ms);
    
     fs := TFileStream.Create('ZTest.txt', fmCreate);
     try
       fs.CopyFrom(ms, 0);
     finally
       fs.Free;
     end;
   finally
     ms.Free;
   end;
End;
Wenn 3. zutrifft:
Delphi-Quellcode:
procedure TForm10.dxBarButton7Click(Sender: TObject);
Var
   fs: TFileStream;
Begin
   fs := TFileStream.Create('ZTest.txt', fmCreate);
   try
     aqDockingManager1.SaveToStream(fs);
   finally
     fs.Free;
   end;
End;
  Mit Zitat antworten Zitat