Moin Schlingel,
eine Variable von Typ String in einen Stream zu schreiben, bzw. daraus zu lesen geht so:
Delphi-Quellcode:
var
sBuffer : string;
fsIN : TFileStream;
fsOUT : TFileStream;
begin
fsIN := TFileStream.Create('Pfad der zu lesenden Datei',fmOpenRead);
fsOUT := TFileStream.Create('Pfad der zu schreibenden Datei',fmOpenWrite or fmCreate);
try
// Platz reservieren
sBuffer := StringOfChar(#00,fsIN.Size);
fsIN.Read(sBuffer[1],length(sBuffer));
fsOUT.Write(sBuffer[1],length(sBuffer));
finally
FreeAndNil(fsIN);
FreeAndNil(fsOUT);
end;
end;
Da der Buffer nicht typisiert ist, ist die Angabe von [1] wichtig. Dies ist die Stelle ab der der String geschrieben wird, bzw. an der in den String eingelesen wird.
Man kann auch andere Werte angeben, um z.B. nur bestimmte Teile zu schreiben, bzw. an bestimmte Stellen einzulesen.