首页 > 代码库 > 序列化与反序列化
序列化与反序列化
<1>
http://wenku.baidu.com/view/f15ac821dd36a32d737581e0.html
把对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为对象的过程称为对象的反序列化。
序列化
序列化 将此类的一个实例序列化为一个文件: 【MyFile.bin 这个文件是把obj对象序列化后持久化存储的文件】 MyObject obj = new MyObject(); obj.n1 = 1; obj.n2 = 24; obj.str = "一些字符串"; IFormatter formatter = new BinaryFormatter(); Stream MyStream = new FileStream("MyFile.bin", FileMode.Create, FileAccess.Write, FileShare.None); formatter.Serialize(MyStream, obj); stream.Close();
反序列化
反序列化 这里说的是将一个MyFile.bin文件通过反序列化,转换成一个obj对象 【filestream 读取这个文件流,然后用.net的序列化器反序列化成对象】 IFormatter formatter = new BinaryFormatter(); Stream MyStream = new FileStream("MyFile.bin", FileMode.Open, FileAccess.Read, FileShare.Read); MyObject obj = (MyObject) formatter.Deserialize(MyStream); stream.Close();
xml
将此类的实例序列化成一个Xml文件 XmlSerializer ser = new XmlSerializer(obj.GetType()); ser.Serialize(new FileStream(@"users.xml", FileMode.Create), obj); 反序列化 XmlSerializer serializer = new XmlSerializer(Type.GetType("MyObject")); MyObject my=(MyObject)serializer.Deserialize(new FileStream(@"users.xml",FileMode.Open));
序列化与反序列化
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。