Einzelnen Beitrag anzeigen

dynamo

Registriert seit: 21. Okt 2008
Ort: Bordesholm
37 Beiträge
 
Delphi 11 Alexandria
 
#1

Textdatei byteweise in MemoryStream speichern - Problem

  Alt 27. Dez 2012, 00:53
Hallo,
ich möchte eine Textdatei byteweise auslesen und dabei byteweise in einen Memorystream speichern.
Hier mein Beispielcode (um den kurz und übersichtlich zu halten, habe ich die Schutzblöcke mal weggelassen).

Code:
procedure makestream(datei:string);
var
   fl :file of char;
   P : char;
   len,fs : longint;
   stream : TMemoryStream;
begin
     Stream := TMemoryStream.Create;
     assignfile(fl,datei);
     reset(fl);
     fs := filesize(fl);

     Len := fs;
     Stream.Write(Len, SizeOf(Len));

     while not eof(fl) do
     begin
      read(fl,p);
//      Len := Length(p);
//      Stream.Write(len, sizeof(p));
      Stream.Write(p,sizeof(p));
     end;

   form1.Memo1.Lines.LoadFromStream(stream);
   stream.Free;
   closefile(fl);
end;
Leider bleibt mein Memofenster leer. Was mach' ich nur falsch?
Wenn diese kleine Procedure mal ordentlich läuft, möchte ich nämlich jedes einzelne Char-Zeichen bearbeiten (codieren), bevor ich es in den Stream schreibe.
Kann vielleicht jemand den Fehler korrigieren?
Jörg
  Mit Zitat antworten Zitat