二进制显示 ( 积分: 20 )

  • 主题发起人 主题发起人 帆若无
  • 开始时间 开始时间

帆若无

Unregistered / Unconfirmed
GUEST, unregistred user!
请问怎样把一副bmp转为二进制显示出来,即:01010001

谢谢拉!
 
请问怎样把一副bmp转为二进制显示出来,即:01010001

谢谢拉!
 
下列程序可将图片转成十六进制,要转成二进制再自已再将十六进制化成二进制即可:
function Str2Hex(const data: array of byte; len: integer): string;
const
Hex: array[0..15] of char = '0123456789ABCDEF';
var
i: Integer;
begin
setlength(result, length(data) * 2);
for i := 0 to Len - 1 do
begin
result[i * 2 + 1] := Hex[data shr 4];
result[i * 2 + 2] := Hex[data and $F];
end;
end;






var
NumRead: integer;
b: array[1..BUF_SIZE] of byte;
s: string;
begin

assignfile(f, 'aa.bmp');
Reset(f);
repeat
BlockRead(f, b, BUF_SIZE, NumRead);
if NumRead = 0 then
break;
s := Str2Hex(b, NumRead); //将每个字节以16进制表示
Memo1.Lines.Add(s);
until (NumRead = 0);
closefile(f);

Memo1.Lines.SaveToFile('binfile.txt');

end;
 
另:有哪位大侠能将转换成文本型的二进制图像数据还原呢?
 
接受答案了.
 

Similar threads

回复
0
查看
894
不得闲
S
回复
0
查看
721
swish
S
D
回复
0
查看
937
DelphiTeacher的专栏
D
D
回复
0
查看
731
DelphiTeacher的专栏
D
后退
顶部