如何利用delphi读取二进制文件

如何利用delphi读取二进制文件,第1张

通常二进制文件都有特定的结构,以下是读取二进制的示例代码:

Trec=record  //记录测量数据表 

 x: array[0..8] of integer 

 y: array[0..6] of double 

end 

var 

 mfile: file of trec 

begin 

 assignfile(mfile,'d:\1.dat') 

 Reset(mfile) 

 read(mfile,result) 

 closefile(mfile) 

end

{先创建了8个字节的二进制文件t.bin,

其实保存的是字符串'      88'

再修改文件的第4个(注:文件的指针从0开始)字节为'0'

最后保存的文件为字符串'   0  88'

}

var

f1,f2:file of byte

a,b,c:byte

begin

assign(f1,'t.bin') rewrite(f1)

a:=32

b:=ord('8')

c:=ord('0')

write(f1,a,a,a,a,a,a,b,b)

close(f1)

assign(f2,'t.bin') reset(f2)

seek(f2,3)

write(f2,c)

close(f2)

end.

ini文件中不支持直接读写二进制数据。

但是你可以使用十六进制(或类似形式)的ASCII字符串形式来存取数据,在保存之前和读取之后自己进行转换。

例如要保存一个“是否记录日志”的选项,所在段为[Option],选项名为IsLogEnabled,值为真:

str_value := IntToHex(Integer(FIsLogEnabled), 8)

ini.WriteString('Option', 'IsLogEnabled', str_value)

类似的,你可以把段名和选项名都经过转化,以免别人看懂。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/7945920.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存