L
lfj_hycs
Unregistered / Unconfirmed
GUEST, unregistred user!
朋友们好!在用FileStream.ReadBuffer读入一个文件时想要显示十六进制字符,BinToHex转换后尾部多出如下的 "X"、"*"、"&"等字符,而且读取同样长度的内容多读几次后也可能不一样,搞了一晚上了也不知道为什么,郁闷!还请朋友们帮忙!谢谢!1260X8A050000002C8A050000002C008A050000002C0000*8A050000002C00002300&8A050000002C0000232B&8A050000002C0000232B008A050000002C0000232B0000*以下是程序代码,请朋友们帮忙看一下有什么问题吧,谢谢!procedure TForm1.Button1Click(Sender: TObject);var p : Pchar;
h : Pchar;
c : integer;
begin
c := strtoint(edit1.Text);
sm.Position := 12;
//sm:TFilestream 已加载 getmem(p,c);
sm.ReadBuffer(p^,c);
getmem(h,c*2);
bintohex(p,h,c);
memo1.Lines.Add(h);
freemem(p);
freemem(h);
end;
h : Pchar;
c : integer;
begin
c := strtoint(edit1.Text);
sm.Position := 12;
//sm:TFilestream 已加载 getmem(p,c);
sm.ReadBuffer(p^,c);
getmem(h,c*2);
bintohex(p,h,c);
memo1.Lines.Add(h);
freemem(p);
freemem(h);
end;