原来我提问过汉字,英文->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工具有点问题,所以想自己做一个小工具的。可以我对编程不是很在行的,就大家想想办法了。
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工具有点问题,所以想自己做一个小工具的。可以我对编程不是很在行的,就大家想想办法了。
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;