Da muss ich jetzt mal gestehen, dass ich nicht so recht weiß, was sich hinter UFT... und ISO... verbirgt.
Ich hab nur bei ner schnellen Suche mit Google UTF-16 als Unicodekompatibel gesehen und das eben genommen.
Wollte dieses Problemchen nicht meine ganze Arbeit aufhalten lassen und habs daher einfach genommen.
Kann mir jemand den Unterschied erklären? Ich weiß eben auch noch nicht (hab noch nicht eine
XML damit erzeugen lassen) wie die
XML dann aussehen wird. Aber ich will auf alle Fälle gerüstet sein, sollte mal ein Wert, der in der
xml gespeichert werden soll,
Unicode sein.
Kann mir also jemand erklären was der Unterschied zwischen den ganzen Encodings ist? Oder ne Seite wos gut erklärt ist? Entweder hab ich mich schlecht ausgedrückt oder... hab jedenfalls bei meinen Googlesuchen nichts gefunden.
EDIT: Hab noch schnell die 2. Variante von sx2008 getest
et, die geht. Kann man jetzt sagen, ob eine besser ist?
(Vielleicht noch erwähnenswert: Ich arbeite in einer
Dll und die bekommt PWideChar übergeben, damit auch andere Programmiersprachen die
Dll benutzen können))
Delphi-Quellcode:
var
W : Widestring;
S : String;
PW: PWideChar;
begin
W := 'Das Möbel müffelt mächtig '+#$2801;
S := WideCharToString(@W[1]);
GetMem(PW, Length(S)*2+1);
StringToWideChar(S, PW, Length(S)*2+1);
if W <> PW then ShowMessage('Problem bei Umwandlung');
FreeMem(PW);
end;
oder
Delphi-Quellcode:
var
a, c : Widestring;
b : AnsiString;
begin
a := 'Das Möbel müffelt mächtig ';
a := a + #$2801; // und jetzt noch ein Unicodezeichen oberhalb #255 dranhängen
b := a;
c := b;
if a <> c then ShowMessage('Problem bei Umwandlung');