delphi 的Utf8ToUnicode方法
delphi 的Utf8ToUnicode方法怎么用呢,
能不能把"4e2d56fd"这个字符串转为中文?
[解决办法]
http://bbs.2ccc.com/topic.asp?topicid=339687
[解决办法]
procedure TForm1.Button3Click(Sender: TObject);var Dest:Pchar; Unic:PWidechar; str:string; NewDest:PwideChar; begin GetMem(Unic,100); try GetMem(Dest,100); UnicodeToUtf8(Dest,StringToWideChar('测试字符串', Unic, 100),100); try str:=StrPas(Dest); ShowMessage('utf8的编码为:'+Str); GetMem(NewDest,100); try Utf8toUnicode(NewDest,Dest,100); ShowMessage('原始的字符为:'+WideCharToString(NewDest)); finally FreeMem(NewDest); end; finally FreeMem(Dest); end; finally FreeMem(Unic); end; end;
[解决办法]
procedure TForm1.btn1Click(Sender: TObject);
var
unicodeStr: WideString;
begin
unicodeStr := UTF8Decode(#$E4#$B8#$AD#$E5#$9B#$BD); // “中国”的utf8编码
self.Caption := unicodeStr;
end;