Python:我需要用Python解析一个包含混合编码数据的二进制文件?

Python:我需要用Python解析一个包含混合编码数据的二进制文件?,python,python-3.x,binary,Python,Python 3.x,Binary,我有一个文件,其中包含拉丁语编码的数据-1编码和二进制编码,这取决于字节的位置。 我想创建一个解析器,它可以读取二进制数据,分析并过滤不需要的数据。 问题:我无法查看二进制文件的实际格式,以便分析模式并删除不必要的数据。 我无法处理此问题。 我尝试过使用bytearray,但失败了,因为它需要编码。而且逐字节读取结果也是错误的数据 with open("FOA", "rb") as f: with open("FA", "w") as d: byte = f.read(1)

我有一个文件,其中包含拉丁语编码的数据-1编码和二进制编码,这取决于字节的位置。 我想创建一个解析器,它可以读取二进制数据,分析并过滤不需要的数据。
问题:我无法查看二进制文件的实际格式,以便分析模式并删除不必要的数据。
我无法处理此问题。
我尝试过使用bytearray,但失败了,因为它需要编码。而且逐字节读取结果也是错误的数据

with open("FOA", "rb") as f:  
  with open("FA", "w") as d:  
    byte = f.read(1)  
    while byte != "":  
        # Do stuff with byte.  
        print(byte)  
        d.write(str(byte))  
        byte = f.read(1)
我没有使用bcoz,我想看看结果。但我认为它没有给出正确的输出。
提前感谢。

您知道哪些字节位置是拉丁1字符串,哪些是二进制数据吗?如果是这样的话,那就很容易了。如果不是这样的话,就没有明确的规则可以告诉你,有些字节是拉丁字母1的文本,而不是二进制数据。有一些很好的启发法(NUL字节和未映射/专用字符可能是二进制的,除了
\n
\r
\t
之外的控制字符很可能是二进制的,4个或更多可打印字符的字符串比较短字符更可能是文本,字母字符串比符号字符串更可能是文本,等等。)c、 ),但这些启发式算法的好坏在很大程度上取决于您所拥有的数据类型。请尝试对其运行
strings
,看看它有多接近。