-1

我知道是 %F0 %9F %8C %A0

但是如何将其转换为在 Delphi 中可用?

我尝试了几个 html 编码器,但没有一个给出这个结果

我的测试

 for i := 1 to length(s) do
    result:= result+IntToHex(ord(s[i]),2);

但我的结果是 D83CDF20

4

1 回答 1

7

这是该字符的简单 UTF-8 编码。TEncoding您可以使用如下方式获取 Delphi 字符串:

var
  S: string;
begin
  S := TEncoding.UTF8.GetString(TBytes.Create($F0, $9F, $8C, $A0));
end;

或者干脆

S := '';

如果你想反过来:

var
  bytes: TBytes;
begin
  bytes := TEncoding.UTF8.GetBytes('');
end;

或者:

var
  S: UTF8String;
begin
  S := UTF8String('');
end;

适用于 Delphi 2009 及更高版本。

于 2015-11-29T22:48:14.673 回答