c# - 从二进制转换为 XML 序列化而不需要类型

标签 c# serialization .net-4.0

我有一个包含几种类型的项目,我将它们二进制序列化 (BinaryFormatter) 到文件。我现在想创建第二个项目,允许管理员临时将这些文件解码为更易读的 XML 格式(例如,使用 XmlSerializer)。

我可以将它们反序列化为原始类型的对象,然后重新序列化它们,但是是否有可能

  • 跳过反序列化(至少在我自己的代码中),并且
  • 更好的是,完全不必在我的解码器工具中引用类型?

最佳答案

如果您指的是 .NET 的 native 二进制序列化 (BinaryFormatter),问题是它使用一种未记录的格式 (AFAIK)。

如果你真的想尝试不反序列化,你可以检查this article ,似乎已经分析了它的格式(但作者自己说它可能不完整)。但我认为这太麻烦了。

关于c# - 从二进制转换为 XML 序列化而不需要类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8866822/

相关文章:

c# - LastWriteTime 和 LastAccessTime 有什么区别

c# - Restsharp 异常 URI 前缀无法识别

C# 控制台获取 Windows 10 强调色

java - 对象序列化问题

java - 为什么 gson 不允许序列化 java.lang.Class?

serialization - 如何在没有 old_io 的情况下从字节读取/写入整数值?

c# - 如何将 TypeConverter 与 ConfigurationSection 一起使用?

c# - 将异步结果返回给事件

c# - 如何获得 com+ 应用程序的所有 com+ 组件的列表?

c# - 关于线程池最大线程的说明