编辑二进制d

2024-10-03 00:19:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个很简单的问题,我相信很容易解决,但我还不能解决它。我有一个二进制文件,它的头像这样-

{
HeaderID       = EH:000001:000000:000000 ;
Image          = 1 ;
ByteOrder      = LowByteFirst ;
DataType       = SignedLong ;
Dim_1          = 981 ;
Dim_2          = 1043 ;
Size           = 4092732 ;
.....

我想要的是将数据类型从SignedLong替换为SignedInteger,这样其他软件就可以读取它。到目前为止,我已经尝试了以下代码-

with open ('f0011.edf', 'r+b') as f:  
    f.seek(121)
    newbytes = 'Integer'
    f.write(newbytes)

代码的问题是它将SignedLong替换为SignedInteger,但它也省略了“;”符号,并将Dim_带到我不想要的前一行。你知道吗

{
HeaderID       = EH:000001:000000:000000 ;
Image          = 1 ;
ByteOrder      = LowByteFirst ;
DataType       = SignedIntegerDim_1          = 981 ;
Dim_2          = 1043 ;
Size           = 4092732 ;

任何帮助都将不胜感激。你知道吗


Tags: 文件代码imagesize二进制dimdatatypeeh