Hi Sherlock,
noch mal zu den TextFiles. Ich bin da mittlerweile auch ein bisschen von weg, aber habe unter D2007 auch einige Jahre problemlos mit TextFiles/writeln und UTF8 gearbeitet.
Codebeispiel:
Delphi-Quellcode:
procedure Demo;
var s:string;
fileH: TextFile;
begin
s:='Ein ü ist ein ü!';
assignFile(fileH,'egal.txt');
rewrite(fileH);
writeln(fileH,utf8encode(s));
closeFile(fileH);
end;
Damit das reibungslos funktioniert und Delphi nicht intern irgendwas umwandelt, was ich gar nicht will, war es gut, den Text selbst ganz normal als "string" zu benutzen und erst am Ende beim writeln mit "utf8encode" umzuwandeln.
Alternativ geht das gleiche auch mit TStringList, also:
Delphi-Quellcode:
[...}
StrList.Add(utf8encode(s));
StrList.SaveToFile('egal.txt');
[...]
Und wenn du auf Delphi >=2009 umsteigst, musst du den Code eh wieder anfassen.