编程中遇到需要将Unicode的两个字节的16进制数转换为对应的中文,可是,不知道该如何做。
已知
一个字符串:s:='5475';   //54 75 分别是两个字节的16进制值
现在需要将它转换成对应的中文 : "呵"
可是该如何下手呢?
在VB中是这样做的:
    s="5475"
    result=chrb("&H"&Mid(s,3,2))&chrb("&H"&Mid(s,1,2))
  result就变成了"呵"
如何在Delphi 中实现呢? 请教!! 焦急等待中

解决方案 »

  1.   

    procedure TForm1.Button2Click(Sender: TObject);
    var
      aa : array[0..1] of widechar;
      dd,s : string;
    begin
      aa[0] := widechar(strtoint('$5475'));
      aa[1] := #0;
      dd := widechartostring(aa);
      showmessage(dd);
    end;
      

  2.   

    procedure TForm1.Button2Click(Sender: TObject);
    var
      aa : array[0..1] of widechar;
      dd,s : string;
    begin
      s := '5475';
      aa[0] := widechar(strtoint('$' + s));
      aa[1] := #0;
      dd := widechartostring(aa);
      showmessage(dd);end;