var W: Word; //无符号整数 WC: WideChar; //unicode字符 begin W := 65; WC := WideChar(W); ShowMessage(WC); end;———————————————————————————————————— 宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。 ————————————————————————————————————
楼主这个肯定对你有用。可是要给分喽。呵呵。//从字符串到unicode的转换函数; 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[i]<>#0) or (a[i+1]<>#0)) do begin j:=IntToHex(Integer(a[i]),2); k:=IntToHex(Integer(a[i+1]),2); s:=s+k+j; i:=i+2; end; Result:=s; end; //从二进制字符串到二进制整数的转换函数; function ReadHex(AString:string):integer; begin Result:=StrToInt('$'+AString); end;//从unicode到字符串的转换函数; function UnicodeToAnsi(Unicode: string):string; var s:string; i:integer; j,k:string[2]; begin i:=1; s:=''; while i<Length(Unicode)+1 do begin j:=Copy(Unicode,i+2,2); k:=Copy(Unicode,i,2); i:=i+4; s:=s+Char(ReadHex(j))+Char(ReadHex(k)); end; if s<>'' then s:=WideCharToString(PWideChar(s+#0#0#0#0)) else s:=''; Result:=s; end;
W: Word; //无符号整数
WC: WideChar; //unicode字符
begin
W := 65;
WC := WideChar(W);
ShowMessage(WC);
end;————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————
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[i]<>#0) or (a[i+1]<>#0)) do
begin
j:=IntToHex(Integer(a[i]),2);
k:=IntToHex(Integer(a[i+1]),2);
s:=s+k+j;
i:=i+2;
end;
Result:=s;
end; //从二进制字符串到二进制整数的转换函数;
function ReadHex(AString:string):integer;
begin
Result:=StrToInt('$'+AString);
end;//从unicode到字符串的转换函数;
function UnicodeToAnsi(Unicode: string):string;
var
s:string;
i:integer;
j,k:string[2];
begin
i:=1;
s:='';
while i<Length(Unicode)+1 do
begin
j:=Copy(Unicode,i+2,2);
k:=Copy(Unicode,i,2);
i:=i+4;
s:=s+Char(ReadHex(j))+Char(ReadHex(k));
end;
if s<>'' then
s:=WideCharToString(PWideChar(s+#0#0#0#0))
else
s:='';
Result:=s;
end;
widechar()这个函数不支持,widechar($cac7)='?'的。