Einzelnen Beitrag anzeigen

Argent27

Registriert seit: 13. Okt 2003
Ort: Kassel
13 Beiträge
 
Delphi 6 Enterprise
 
#6

Re: Inhalte zweier Stream Objekte miteinander vergleichen

  Alt 16. Dez 2003, 14:21
choose: Bei meinem aktuellen Problem habe ich tatsächlich nur mit MemoryStreams zu tun. An eine Lösung über eine Schleife hab ich auch schon gedacht, aber die wollt ich nach Möglichkeit vermeiden.

Ich hab hier noch ein einfaches Codebeispiel für eine mögliche Lösung:
(Für alle die mal nach dem Thema suchen)

Delphi-Quellcode:
{ Beschreibung: Vergleichen der Inhalte zweier Streams }
procedure TForm1.Button1Click(Sender: TObject);
var
Ms1, Ms2 : TMemoryStream;
begin
  // Erzeugen Streams
  Ms1 := TMemoryStream.Create;
  Ms2 := TMemoryStream.Create;
  try
    Ms1.Clear;
    Ms2.Clear;

    // Füllen mit Text aus zwei Memos
    Memo1.Lines.SaveToStream(Ms1);
    Memo2.Lines.SaveToStream(Ms2);
    // Zurücksetzen Pos
    Ms1.Position := 0;
    Ms2.Position := 0;
    // Vergleiche Länge
    if Ms1.Size = Ms2.Size then Led1.Active := True
    else Led1.Active := False;
    // Vergleiche Inhalt
    Led2.Active := comparemem(Ms1.Memory, Ms2.Memory,Ms1.Size);
  finally
    freeandNil(Ms1);
    freeandNil(Ms2);
  end;
end;
  Mit Zitat antworten Zitat