原来我提问过汉字,英文->Hex(四字节Unicode)的转换,已经成功了。(详见:
http://community.csdn.net/Expert/topic/3915/3915558.xml?temp=.7345087)
现在我想再把Hex->汉字,英文同时输出,但出现了问题
我是用了这样的函数(CSDN的人家的帖子里找的)
function HexToStr(const sMsg:string;var acMsg:array of char):integer;
var
    iLen:integer;
begin
    fillchar(acmsg,sizeof(acmsg),0);
    iLen:=length(sMsg);
    HexToBin(pchar(sMsg),acMsg,iLen);
    result:=0;
end;可是转换'CED2CAC7D6D0B9FAC8CBA3AC004A006100700061006E006500730065002C0068006500680065002C006B006F0072006F007300690021'('我是中国人,Japanese,hehe,korosi!')
只出现了'我是中国人,'后面的英文没有出现,这是怎么回事呀。
没多少分了,少了点就60分了。
是中国人的帮忙顶了。
这个是我在黑一家日本网站的时候要用到的东东,原来的NB工具有点问题,所以想自己做一个小工具的。可以我对编程不是很在行的,就大家想想办法了。

解决方案 »

  1.   

    再次帮你搞定。function HexToStr(const sMsg:string;var acMsg:array of char):integer;
    var
        iLen:integer;
        i,j:integer;
    begin
        fillchar(acmsg,sizeof(acmsg),0);
        iLen:=length(sMsg);
        HexToBin(pchar(sMsg),acMsg,iLen);    for i:=0 to sizeof(acmsg)-1 do
            if acMsg[i]=#0 then
               for j:=i to sizeof(acmsg)-2 do
                    acMsg[j]:=acMsg[j+1];
        result:=0;
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
        strTemp:array[0..100] of char;
    begin
        HexToStr(Edit1.Text,strTemp);
        Edit2.Text:=strTemp;
    end;
      

  2.   

    gzmhero(hihihi)老大上班就来帮助我们大家,精神真是值得敬佩,估计这个月的专家榜,别人又没有办法望您老人家的项背了....呵呵
      

  3.   

    太感动了,放分了。。gzmhero(hihihi) 在好人呀。