这样转换有意义么,
function TForm1.inttobcd(intnum:integer;bcdlen:integer):string;//整形转2进字串
BEGIN
RESULT:='';
while INTNUM<>0 do
begin
RESULT:=inttostr(INTNUM mod 2)+RESULT;
INTNUM:=INTNUM div 2
end;
while length(RESULT)<BCDLEN do RESULT:='0'+RESULT;
END;
function TForm1.BCDtoINT(bcdSTR:STRING):INTEGER;//2进字串转整形
VAR I,I2,ADDNUM:INTEGER;
BEGIN
result:=0;
FOR I:=1 TO LENGTH(bcdSTR) DO
BEGIN
IF (I=LENGTH(bcdSTR)) AND (bcdSTR[LENGTH(bcdSTR)]='1') THEN
BEGIN
RESULT:=RESULT+1;
BREAK;
END;
IF bcdSTR='1' THEN
BEGIN
ADDNUM:=1;
FOR I2:=i TO LENGTH(bcdSTR)-1 DO ADDNUM:=ADDNUM*2;
RESULT:=RESULT+ADDNUM;
END;
END;
END;
function TForm1.bcdtoasc(bcdstr:string):char; //BCD转ASC码
begin
result:=chr(bcdtoint(bcdstr));
end;
function TForm1.asctobcd(ascchar:char):string;//ASC转 BCD码
begin
result:=inttobcd(ord(ascchar),8);
end;
转出来的还是文本文件只是 全部都是1和0这两个字符
这是你要的所谓2进制文件么