技术开发 频道

如何以对象的形式存储数据


  2:序列化对象
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters.Binary; using System.Xml.Serialization; using System.IO;
2.1 二进制方式 ClassTest Ct = new ClassTest(); Ct.SetUserInfo(textBox1.Text, textBox2.Text); IFormatter Fm = new BinaryFormatter(); Stream stream = new FileStream(@"E:"测试"类序列化"类序列化测试"类序列化测试"myfile.bin", FileMode.Create, FileAccess.ReadWrite, FileShare.None); Fm.Serialize(stream, Ct); stream.Close(); 2.2 XML 方式 ClassTest Ct = new ClassTest(); Ct.SetUserInfo(textBox1.Text, textBox2.Text); XmlSerializer Xs = new XmlSerializer(typeof(ClassTest)); StreamWriter myWriter = new StreamWriter(@"E:"测试"类序列化"类序列化测试"类序列化测试"myfile.xml"); Xs.Serialize(myWriter, Ct); myWriter.Close();
  3:反序列化得到对象
IFormatter formatter = new BinaryFormatter(); Stream stream = new FileStream(@"E:"测试"类序列化"类序列化测试"类序列化测试"myfile.bin", FileMode.Open, FileAccess.Read, FileShare.Read); ClassTest obj = (ClassTest)formatter.Deserialize(stream); stream.Close();
  这两种方式,二进制方式,文件小速度快,但不易阅读;XML 方式相对文件大一点,速度稍慢。但可读性较好
0
相关文章