我有一个程序将结果文件保存在二进制文件中。在程序中也可以将结果文件导出为XML格式。
由于程序本身在浏览其结果时非常糟糕,我自己编写了一个程序来读取这些结果文件,但显然使用的是XML格式。
问题是,从二进制文件导出的XML文件非常庞大!虽然原始程序可以使用的二进制文件大约是100 KB,但导出到XML的同一文件大约是2~3 MB。
我想知道有没有办法可以找到如何阅读原始二进制文件!
答案 0 :(得分:2)
要从二进制文件中获取数据,您需要知道它的结构。如果你不知道结构,我认为这将是一个毫无希望的努力。 xml文件要大得多,因为它包含除数据之外的结构。你可以阅读和解释它。
答案 1 :(得分:1)
您需要阅读程序源代码(如果不可用) - 在ILDASM或Reflector中打开此程序,并尝试了解如何创建二进制文件。可能这是使用二进制序列化完成的。
您可以定义自己的类型,它们是原始类型的精确副本,包括序列化属性,并使用二进制序列化加载它们。
但是,第三方文件格式的每次更改都可能要求您更改程序。我认为最好使用XML。