提问人:April Summers 提问时间:11/17/2023 更新时间:11/17/2023 访问量:35
如何解析 7z 文件的结束头?
How to parse the end header of a 7z file?
问:
我正在研究在不使用任何包的情况下解析 7z 文件 - 只需读取字节并使用我自己的代码处理它们。然而,据我所知,7z 格式的记录非常糟糕。
我设法使用信息页面上有关损坏档案的信息解析了 7z 文件的正面标题。我能找到的关于解析 7z 文件的结束标头的唯一信息是 7zFormat.txt,这是“文档”的相关片段:
Header
~~~~~~
BYTE NID::kHeader (0x01)
[]
ArchiveProperties
[]
[]
BYTE NID::kAdditionalStreamsInfo; (0x03)
StreamsInfo
[]
[]
BYTE NID::kMainStreamsInfo; (0x04)
StreamsInfo
[]
[]
FilesInfo
[]
BYTE NID::kEnd
我还从我正在测试的文件中提取了作为结束标头一部分的字节,如下所示:
[
'01', '04', '06', '00', '01', '09', 'c1', 'b5',
'10', '00', '07', '0b', '01', '00', '01', '21',
'21', '01', '09', '0c', 'c1', 'ae', '10', '00',
'08', '0a', '01', 'b9', 'e8', 'c3', 'a6', '00',
'00', '05', '01', '19', '08', '00', '00', '00',
'00', '00', '00', '00', '00', '11', '0d', '00',
'61', '00', '2e', '00', '70', '00', '6e', '00',
'67', '00', '00', '00', '14', '0a', '01', '00',
'20', 'fb', '01', '59', '7c', '0e', 'da', '01',
'15', '06', '01', '00', '20', '00', '00', '00',
'00', '00'
]
我能够解码此标头的哪些部分应该包含什么 - 但绝对不知道如何解释实际字节。我应该如何解释/阅读此标题?(答案是首选的概念,如果有示例代码,如果是 Node.js 或 Python,将最有帮助)
如果我的帖子缺少任何重要信息,请告诉我。感谢您的阅读!
答: 暂无答案
评论