none
XML 序列化文件的Load是否可以不受内存对象修改的限制? RRS feed

  • 问题

  • 对于二进制来说一个最头痛的问题就是,只要被序列化的对象定义有略为一点点改动, 再犯序列化的时候都会抱错而无法读取.

    我想了解一下。如果我改用XML序列化的话,是否可以避免这种事情的发生。 比如我后来在类中增加了一个int i, 那么在XML凡序列化的时候如果找不到I,是否也不会出错。

    谢谢

    2010年4月1日 13:39

答案

  • 对二进制的话,必须一一对应,否则就乱掉了。不过序列化提供了一个接口(ISerializable),可以自定义处理方法,提供了一个解决方法吧。

    xml的话应该能兼容,反正我的项目里,如果一个字段是null,那么序列化之后的xml里根本就没这个字段的定义,但也回的去。

    两者性能上应该相差不少。

    理论上,类的结构不能乱改,最好是继承,这样反序列化之后再up或down cast一下就行了。

     


    霸王
    2010年4月1日 17:36