In deinem Code speicherst du aber UTF-16 anstatt UTF-8. Ist das denn so gewollt?
ABER der Konverter streikt, da die neuen Textdateien in UTF-16-LE und nicht mehr in UTF-8 codiert werden.
Mit dieser kleinen Routine kannst du auch UTF-8 schreiben:
Delphi-Quellcode:
uses
WideStrings, WideStrUtils;
procedure SaveToUTF8(const Filename: string; Content: TWideStrings);
var
Stream : TFileStream;
Zeile : UTF8String;
begin
Zeile := UTF8Encode(Content.Text);
Stream := TFileStream.Create(Filename, fmCreate);
try
Stream.WriteBuffer(sUTF8BOMString[1], Length(sUTF8BOMString));
Stream.WriteBuffer(Zeile[1], Length(Zeile));
finally
Stream.Free;
end;
end;
Die UTF8-Routine funktioniert. Vielen lieben Dank!!!
Was müsste ich denn jetzt ändern, um UTF16 ausgeben zu können. Die Konvertierung entfällt dann ja. Grundsätzlich dürfte sich das Verfahren ja nicht unterscheiden, oder?
Viele Grüße
Ingo