比如,0E00,转换成汉字“一”怎么做?

解决方案 »

  1.   

    var
      s:ucs4string;
      a:array[1..2] of byte;
    begin
    SetLength(S,2);
    a[1]:=$4e;
    a[2]:=$2d;
    S[0]:=a[1];
    S[0]:=S[0]*$100+a[2];
    S[1]:=0;
    showmessage(UCS4StringToWideString(s));
    end;
      

  2.   

    var
      s:ucs4string;
      a:array[1..2] of byte;
    begin
    SetLength(S,2);
    a[1]:=$4E;
    a[2]:=$00;
    S[0]:=a[1];
    S[0]:=S[0]*$100+a[2];
    S[1]:=0;
    showmessage(UCS4StringToWideString(s));
    end;
      

  3.   

    不用这么麻烦吧。s1:widestring;
    s1:string;s1:=widechar($4e00);//
    s2:=widechar($4e00);//转成了ansi字符
      

  4.   

    stgsd的方法测试有效,也够简单,结贴