unicode如何转换成汉字字符形式,调取汉字。 (50分)

  • 主题发起人 主题发起人 许阳
  • 开始时间 开始时间

许阳

Unregistered / Unconfirmed
GUEST, unregistred user!
例如:unicode"71d5",经过程序处理后直接调出汉字“燕”。
 
function unicodetostr(const s: String): String;
var
i,len,j:Integer;
t:String;
begin
Result:='';
len:=Length(s);
i:=1;
while i<=len do begin
t:=Copy(s,i,4);
j:=StrToInt('$'+t);
t:=widechar(j);
Result:=Result+t;
i:=i+4;
end;
end;
别人写的考给你,另外还有帆过来的 燕--71d5
function AnsiToUnicode(Ansi: string): string;
var
s:string;
i:integer;
j,k:string[2];
a:array [1..1000] of char;
begin
s:='';
StringToWideChar(Ansi,@(a[1]),500);
i:=1;
while ((a<>#0) or (a[i+1]<>#0)) do begin
j:=IntToHex(Integer(a),2);
k:=IntToHex(Integer(a[i+1]),2);
s:=s+k+j;
i:=i+2;
end;
Result:=s;
end;
 
用widestring. 例子:
procedure p(var s:widestring;intval:longword)
var s:widestring;
begin
s := s+widechar(intval) ;
end ;
 
l_x_yuan:
你的方法非常好!
我找了很久了,终于找到了,谢谢了!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
后退
顶部