转换为%F0%9F%8C%A0

时间:2015-11-29 22:06:40

标签: delphi unicode unicode-escapes

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

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

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

我的考试

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

但我的结果是D83CDF20

1 个答案:

答案 0 :(得分: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及更高版本。