Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Memory Streams kopieren? (https://www.delphipraxis.net/10933-memory-streams-kopieren.html)

FreewareFire 28. Okt 2003 11:49


Memory Streams kopieren?
 
Hallo,

ich habe da eine etwas kompliziertere Frage:

Ich habe einen TMemoryStream, diesen möchte ich an das Ende eines anderen TMemoryStreams anhängen!
!Anhängen ist sehr wichtig - nichts überschreiben etc.!

Also z.B.


Stream 1: abc
Stream 2: xyz

Das Ergebnis sollte dann so aussehen:

Stream 3: abcxyz

Ich habe keine Ahnung wie sowas gehen soll, brauche es aber für ein Projekt!

Der Aufbau ist mir ja klar, aber wie setze ich die Position des Streams an das Ende und wie kopiere ich dann Daten aus dem anderen Stream an diese Stelle? :wiejetzt:

Ist verdammt wichtig!


Vielen Dank für eure mühe! :thuimb:

negaH 28. Okt 2003 12:01

Re: Memory Streams kopieren?
 
Delphi-Quellcode:
var
  Source,Dest: TMemoryStream;
begin
 ....
   Dest.Position := Dest.Size;
   Dest.WriteBuffer(Source.Memory^, Source.Size);
 ....
end;

// oder
var
  Source,Dest: TMemoryStream;
begin
 ....
   Source.Position := 0;
   Dest.Position := Dest.Size;
   Dest.CopyFrom(Source, Source.Size);
 ....
end;
Ersters ist schneller.


Hagen

Sharky 28. Okt 2003 12:07

Re: Memory Streams kopieren?
 
Hai FreewareFire,

habe es zum Test mal so gemacht:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
 m_stream1,
 m_stream2  : TMemoryStream;
begin
 m_stream1 := TMemoryStream.Create;
 m_stream2 := TMemoryStream.Create;
 try
  m_stream1.LoadFromFile('c:\test.txt');
  m_stream2.LoadFromFile('c:\test.txt');
  m_stream2.Seek(0,soFromEnd);
  m_stream2.CopyFrom(m_stream1,0);
  m_stream2.SaveToFile('c:\ergebniss.txt');
 finally
  m_stream1.Free;
  m_stream2.Free;
 end;
end;
[EDIT]Hagen war schneller....[/EDIT]

FreewareFire 28. Okt 2003 16:09

Re: Memory Streams kopieren?
 
Prima!


Danke euch beide! Ich versuche es gleich direkt mal! :thuimb:


:wink: CU

FreewareFire 28. Okt 2003 19:57

Re: Memory Streams kopieren?
 
Super! Vielen Dank! Hat prima geklappt!

DANKE


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz