如题  
既然都是保存数据,他们二者的效率等等方面有什么不同呢\?谢谢

解决方案 »

  1.   

    自定义不是麻烦么,文件内容解析到内存变量的过程都得自己实现,Serialize机制把整个过程都封装起来,使用方便
      

  2.   

    串行化和直接写文件的区别在于,串行化不用定义文件结构。顺序存储的情况下,二者的区别不是很大。
    如:
    struct
    {
         int a;
         int b;
         int c;
    }
    上面这个结构,你是否使用串行化都没有多少区别。     但是像List<object>这样的较复杂的结构,object也可能是复杂的结构类型,你如何保存到文件中呢?如果是直接写文件,你需要定义好文件结构,把数据提取出来,按你定义好的结构写入到文件中。恢复的时候,需要先读取数据,然后解析数据,最后根据解析后的数据构造List<ojbect>对象。使用串行化就简单多了,不需要定义文件结构,直接将List<object>串行化后写入。读取的时候也不需要解析数据,直接反串行化即可构造出List<object>对象。