Thema: Delphi string to UTF 16

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#10

Re: string to UTF 16

  Alt 26. Apr 2009, 14:06
Wie schon gesagt, wenn du ein nur in und von ANSI konvertierst, dann entspricht der Unicode-String der UTF16-Darstellung,
da nur Unicodezeichen zwischen #$8000 und #$fffd in unicode und utf16 eine andere Darstellung besitzen.

Delphi-Quellcode:
function AnsiToUtf16(const s: AnsiString): WideString;
//var i: Integer;
begin
  Result := s;
  //for i := 1 to Length(Result) do
  // if Result[i] > #$7fff then
  // raise Exception.Create('is not an utf8 string');
end;

function Utf16ToAnsi(const s: WideString): AnsiString;
var i: Integer;
begin
  for i := 1 to Length(s) do
    if s[i] > #$7fff then s[i] := '?';
  Result := s;
end;
(wenn du unbedingt willst, dann kannst du ja gern die auskommentierte Prüfung aktivieren, aber diese wird eh nicht's melden)
$2B or not $2B
  Mit Zitat antworten Zitat