Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#2
  Alt 22. Feb 2003, 14:30
Moin Chewie,

wenn ich das richtig sehe, dann hat OutputStream die Grösse 0, denn er wird nur angelegt, aber nichts da reingeschrieben, somit wird die Länge von buf auf 0 gesetzt, und die Schleife läuft von 0 bis -1, wird also übersprungen.

Zitat von Chewie:
Da die komprimierten Daten binär sind, kann ich zum Lesen aus dem Memory-Stream keine Strings benutzen.
doch:

Delphi-Quellcode:
var
  sBuf : string;
  msIN : TMemoryStream;

begin
  msIN := TMemoryStream.Create;
  try
    msIN.LoadFromFile('IrgendeineDatei');
    SetLength(sBuf,msIN.Size);
    msIN.Read(sBuf[1],length(sBuf));
  finally
    FreeAndNil(msIN);
  end;
end;
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat