Hallo,
ich lade mittels folgenden Code eine Text-Datei in mein Programm, dass #0 enthält:
Delphi-Quellcode:
//FileStream und StringStream erzeugen
FileStream := TFileStream.Create(Datei, fmOpenRead);
StringStream := TStringStream.Create(S);
try
//FileStream in StringStream kopieren
FileStream.Position := 0;
StringStream.CopyFrom(FileStream, FileStream.Size);
//String aus StringStream auslesen
StringStream.Position := 0;
S := StringStream.ReadString(StringStream.Size);
In "S" hab ich dann den String der Datei aber noch mit #0.
Um dieses "Zeichen" jetzt zu entfernen, nutz ich folgenden Code:
Delphi-Quellcode:
//#0 durch #32 ersetzen
for i := 1 to length(S) do
begin
If S[i] = #0 then
S[i] := #32;
end;
Nur ist das jetzt nicht sehr perfomance-schonend.
Vor allem, weil die einzulesende Datei gute 4 MB hat und dementsprechend Zeichen.
Gibt es dafür eine bessere Lösung?
Noch kurz als Info: Momentan arbeite ich dann mit "S", also dem String, weiter.
Ich möchte aber nun das Ganze in eine StringList laden.