Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于.NET的二进制文件解析库_.net_Parsing_Binaryfiles_Declarative - Fatal编程技术网

用于.NET的二进制文件解析库

用于.NET的二进制文件解析库,.net,parsing,binaryfiles,declarative,.net,Parsing,Binaryfiles,Declarative,最近,我有一个任务是制作一个二进制文件解析器,然而这是第一次使用C#/.NET来解决此类问题。从所需的二进制文件中解析和提取数据非常简单,因为它们的结构很简单(尽管我不得不说这是不寻常的,而不是简单的C/C++方式;就我深入研究而言,.NET不支持以相反顺序存储的值[当然我可能错了])。有很多问题更复杂,它们需要更灵活的解析方式,因此我尝试在谷歌上搜索一些库,这些库允许处理复杂的数据结构,并使用结构和字段属性以声明方式描述它们。此时,我发现只有一个Java框架Preon(和)。我看到Preon对

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


谢谢。

您可能想看看。它是一种跨平台的二进制序列化格式;有两种主要的.NET实现—和。

您可能希望了解。它是一种跨平台的二进制序列化格式;有两种主要的.NET实现—和。

Mono项目似乎已经实现了Perl的Pack函数


请参阅。

Mono项目似乎已经实现了Perl的打包功能


请参阅。

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

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

为什么有两种协议缓冲区的实现,这两种实现有什么不同?@Ian:Marc和我碰巧同时开始研究它。Marc的项目对WCF更加友好,并且是从头开始编写的;我的更接近Java API。“我的更接近Java API”-你指的是JDK还是Preon?@L Sahydariv:都不是-我的意思是它更接近协议缓冲区的Java API。我们在谈论我为.NET实现的协议缓冲区。哦,我明白了。:)谢谢。:)为什么有两种协议缓冲区的实现,这两种实现有什么不同?伊恩:马克和我碰巧同时开始研究。Marc的项目对WCF更加友好,并且是从头开始编写的;我的更接近Java API。“我的更接近Java API”-你指的是JDK还是Preon?@L Sahydariv:都不是-我的意思是它更接近协议缓冲区的Java API。我们在谈论我为.NET实现的协议缓冲区。哦,我明白了。:)谢谢。:)