例如,字符串:s='你好,中国abc123';
如何求得对应的Unicode码?

解决方案 »

  1.   

    widestring(s),你的另外一贴我有回府
      

  2.   

    widestring(s)??,得出的还是原来的字符串,不是Unicode码啊
      

  3.   

    To:jinjazz(三个小时上下班)
    我试过,用以下代码
    procedure TForm1.Button1Click(Sender: TObject);
    var t:string;
        i:integer;
    begin
    t:=widestring(edit1.Text);
     for i:=1 to length(t) do
        begin
          edit2.Text:=edit2.Text+IntToStr(ord(t[i]));
        end;end;
    字符串是中文时,结果不对
      

  4.   

    To:suuare(督察)
    您要多少分,如果您的源码是对的,我会再放分给您,君子一言,四马难追!
      

  5.   

    var s:string;
        t:widestring;
        i:integer;
        h,l:byte;
    begin
        s:='12阿f';
        t:=widestring(s);
        for i:=1 to length(t) do
        begin
        h:=hi(ord(t[i]));
        l:=lo(ord(t[i]));
        memo1.lines.add(inttohex(h,2)+inttohex(l,2));
       end;
    end;
      

  6.   

    呵呵  很简单啊  
    function Encode2(var s:WideString):String; 
    var 
    i,len:Integer; 
    cur:Integer; 
    t:String; 
    begin 
    Result:=‘’; 
    len:=Length(s); 
    i:=1; 
    while i<=len do 
    begin 
    cur:=ord(s[i]); 
    //BCD转换 
    FmtStr(t,‘%4.4X’,[cur]); 
    Result:=Result+t; 
    inc(i); 
    end; 
    end; 
    注意是var s:WideString 哦
    快给分!我要100分。另外,UCS2转化为汉字的代码你要不要?
      

  7.   

    呵呵,楼上的也太急了吧,从rich离线库里考出来的时候也不帮搂住把中文输入法的东西改改。
      

  8.   

    TO:suuare(督察)
    很抱歉,jinjazz在你之前已经给出了正确的答案,但仍然感谢您.
    To:jinjazz
    特别感谢您!!!