是否有任何用于二进制文件解析的Java框架?
2022-09-03 00:30:16
我的问题是,我想用一个用JAVA实现的通用解析器来解析不同类型的二进制文件。也许用解析器读取的配置文件来描述文件格式,或者创建Java类,根据某种解析规则解析文件。
我在互联网上搜索了不少,但几乎没有找到关于这个主题的任何东西。
我发现的只是处理编译器生成器(Jay,Cojen等)的东西,但我不认为我可以使用它们来生成解析二进制文件的东西。但我在这个假设上可能是错的。
是否有任何框架可以特别处理二进制文件的轻松解析,或者任何人都可以给我一个提示,如何使用解析器/编译器生成器来做到这一点?
更新:我正在寻找可以编写配置文件的东西,例如
file:
header: FIXED("MAGIC")
body: content(10)
content:
value1: BYTE
value2: LONG
value3: STRING(10)
它会自动生成一些东西,解析以“MAGIC”开头的文件,然后是内容包的十倍(内容包本身由一个字节,一个长和一个10字节的字符串组成)。
Update2:我发现了一些与我正在寻找的“构造”相当的东西,但遗憾的是,这是一个Python框架。也许这有助于某人获得一个想法,我正在寻找什么。