Zitat von
himitsu:
Delphi-Quellcode:
//Result[i] := WideChar(Ord(Input[i]) xor $FFFF);
Result[i] := WideChar(not Ord(Input[i]));
Dabei kann ein ungültger UTF16 String entstehen, bei dem dann ggf. einige Funktionen abbrechen oder einfach '' zurückliefern. Das war auch schon beim AnsiString so, nur nutz man in diesen Breiten (String-CodePage) keine MultiByte-Zeichen.
Zitat:
auf keinen Fall String denn dieses ergibt jeweils untershciedliche Ergebnisse
Klar, wenn man nur mit $FF xor-t. Aber bei "not" ist der Code dann zwischen Delphi 2007 und 2009 kompatibel wenn man "String" einsetzt. (Zudem: Mit WideString fährt man mit angezogender Handbremse)