Ich würde raten, dass Du mit Delphi>=2009 arbeitest. Dann wird durch die Zuweisung Ziel := UTF8Encode(Quelle) der UTF8String intern sofort wieder in einen UTF16-String umgesetzt (Warnung des Compilers: "Implizite String-Umwandlung von 'RawByteString' zu 'string'"). Du könntest es so versuchen:
Delphi-Quellcode:
Var
Quelle : String;
Ziel : UTF8String;
begin
Quelle := 'Zurücksetzen';
Ziel := UTF8Encode (Quelle);
end;
Du wirst aber weiterhin nicht den String 'Zurücksetzen' sehen, denn der Debugger erkennt natürlich die Kodierung und zeigt dir korrekt die Umlaute an. Wenn Du das Ergebnis sehen willst, könntest du "Ziel" in eine Datei kopieren und diese dir dann mit einem Editor ansehen, der die Datei als
Ansi-Datei (Codepage 1252) statt als UTF8-Datei anzeigt.