0

最近我的任务是制作一个二进制文件解析器,但是这是第一次使用 C#/.NET 来解决这类问题。从所需的二进制文件中解析和提取数据非常简单,因为它们的结构很简单(尽管我不得不说这是不寻常的,而不是简单的 C/C++ 方式;而且据我深入研究,.NET 并没有支持以相反顺序存储的值[确定我可能是错的])。有很多更复杂的问题,它们需要更灵活的解析方式,所以我尝试谷歌搜索一些允许处理复杂数据结构并使用结构和字段属性以声明方式描述它们的库。此刻我只找到了一个Java框架Preon(这里这里)。我看到 Preon 非常适合这些问题,它允许以声明方式描述数据结构,使其非常灵活,但是 Preon 是否有任何用于 .NET 的端口或类似物?

谢谢。

4

3 回答 3

3

您可能希望查看Protocol Buffers。它是一种跨平台的二进制序列化格式;有两个主要的 .NET 实现 -的和Marc Gravell 的.

于 2010-01-18T09:31:04.113 回答
2

Mono 项目似乎实现了 Perl 的 Pack 功能。

请参阅http://www.mono-project.com/Mono_DataConvert

于 2010-01-18T09:34:54.357 回答
1

任何有兴趣将 Preon 移植到 .NET 的人,请随时与我联系。我是 Java Preon 的开发者:wilfred at flotsam dot nl

于 2010-01-19T07:44:46.610 回答