下列程序可将图片转成十六进制,要转成二进制再自已再将十六进制化成二进制即可:
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;