我有一个包含几种类型的项目,我将它们二进制序列化 (BinaryFormatter
) 到文件。我现在想创建第二个项目,允许管理员临时将这些文件解码为更易读的 XML 格式(例如,使用 XmlSerializer
)。
我可以将它们反序列化为原始类型的对象,然后重新序列化它们,但是是否有可能
- 跳过反序列化(至少在我自己的代码中),并且
- 更好的是,完全不必在我的解码器工具中引用类型?
最佳答案
如果您指的是 .NET 的 native 二进制序列化 (BinaryFormatter
),问题是它使用一种未记录的格式 (AFAIK)。
如果你真的想尝试不反序列化,你可以检查this article ,似乎已经分析了它的格式(但作者自己说它可能不完整)。但我认为这太麻烦了。
关于c# - 从二进制转换为 XML 序列化而不需要类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8866822/