我在哪里可以找到关于对象的XMl序列化的好教程? 感谢。
答案 0 :(得分:6)
它非常简单,只有三个主要步骤。
[Serializable]
属性标记您的课程。序列化:
var x = new XmlSerializer(typeof(YourClass));
var fs = new FileStream(@"C:\YourFile.xml"), FileMode.OpenOrCreate);
x.Serialize(fs, yourInstance);
fs.Close();
反序列化:
var x = new XmlSerializer(typeof(YourClass));
var fs = new FileStream(@"C:\YourFile.xml"), FileMode.Open);
var fromFile = x.Deserialize(fs) as YourClass;
fs.Close();
答案 1 :(得分:5)
Microsoft's support pages上有一个基本教程,他们的代码示例只有几行:
using System;
public class clsPerson
{
public string FirstName;
public string MI;
public string LastName;
}
class class1
{
static void Main(string[] args)
{
clsPerson p=new clsPerson();
p.FirstName = "Jeff";
p.MI = "A";
p.LastName = "Price";
System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType());
x.Serialize(Console.Out, p);
Console.WriteLine();
Console.ReadLine();
}
}
基本上除了调用为你完成所有艰苦工作的内置函数之外,你没有其他任何东西。
答案 2 :(得分:2)
答案 3 :(得分:1)
MSDN有一篇很好的文章:http://msdn.microsoft.com/en-us/library/ms733901.aspx
这一点更简单:http://www.dotnetjohn.com/articles.aspx?articleid=173
答案 4 :(得分:1)
这是一个好的开始microsoft
同时查看Xml Schema并使用xsd.exe自动生成类越早越好,它可以为您节省大量使用XML的工作量。另外,查看生成的c#文件,可以为您提供一些线索,帮助您了解如何使用属性来操纵类XmlSerializer
加强类的方式答案 5 :(得分:1)
您可以在Web上使用.Net轻松找到有关序列化数据的许多教程。但是,让我提醒一些观点:
序列化的类型:
一个。 XML序列化:请查看http://www.switchonthecode.com/tutorials/csharp-tutorial-xml-serialization
湾二进制序列化:请参阅http://www.switchonthecode.com/tutorials/csharp-tutorial-serialize-objects-to-a-file
当您使用文件工作(读取和写入数据)时,请注意安全方面。这里有一个很好的教程http://msdn.microsoft.com/en-us/library/system.security.permissions.fileiopermission.aspx
答案 6 :(得分:0)
我们使用Serialization以二进制格式和IN XML格式写入数据。 对于二进制格式,我们使用BibnaryFormatSerialization,对于XML格式,我们使用SoapFormatSerialization。