Moin,
ich habe da eine Sache die ich nicht verstehe, in
dem Beitrag hier ist sehr schön beschrieben wie man einen normalen Text in UTF-8 umwandelt.
Wenn ich das jetzt wie folgt umsetze passiert folgendes:
1) Bei ShowMessage wird der Text korrekt umgewandelt angezeigt
2) In der Textdatei steht wieder ein
Ansi-String und die Umlaute sind nicht umkodiert worden
Warum das denn ???
Gruß
Hans
Delphi-Quellcode:
var
U: UTF8String;
R: RawByteString;
OutFile: Text;
procedure TUTF8Test.Button1Click(Sender: TObject);
begin
AssignFile(Outfile, 'Testausgabe.xml');
ReWrite(OutFile);
R := UTF8Encode('Hermann Jürgensen GmbH - äöüÄÖÜß');
SetCodePage(R, $0000, False); // R hat die CodePage kopiert bekommen, daher explizit auf RAW umstellen
ShowMessage(R); // *1
writeln(outfile, R);
CloseFile
(Outfile);
end;