如何使用XmlSerializer进行对象的序列化和反序列化?
时间: 2024-05-07 11:14:48 浏览: 13
XmlSerializer是.NET Framework中一个用于将对象序列化为XML文档或从XML文档反序列化为对象的类。使用XmlSerializer进行序列化和反序列化主要需要以下几个步骤:
1.创建一个要序列化/反序列化的对象
2.创建一个XmlSerializer对象
3.使用XmlSerializer对象的Serialize方法将对象序列化为XML文档或Deserialize方法将XML文档反序列化为对象
下面是一个示例代码,用于演示如何使用XmlSerializer进行对象的序列化和反序列化:
```
using System;
using System.IO;
using System.Xml.Serialization;
namespace ConsoleApp1
{
[Serializable]
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main(string[] args)
{
// 创建一个要序列化的对象
Person person = new Person()
{
Name = "John",
Age = 30
};
// 创建一个XmlSerializer对象
XmlSerializer serializer = new XmlSerializer(typeof(Person));
// 将对象序列化为XML文档
using (TextWriter writer = new StreamWriter("person.xml"))
{
serializer.Serialize(writer, person);
}
// 从XML文档反序列化为对象
using (TextReader reader = new StreamReader("person.xml"))
{
Person deserializedPerson = (Person)serializer.Deserialize(reader);
Console.WriteLine("Name: " + deserializedPerson.Name);
Console.WriteLine("Age: " + deserializedPerson.Age);
}
Console.ReadKey();
}
}
}
```