C# 的 XmlSerializer 类用于将对象序列化为 XML 字符串,或将 XML 字符串反序列化为对象。以下是如何使用 XmlSerializer 的基本步骤:
- 定义要序列化的类。例如,定义一个名为
Person
的类:
public class Person { public string FirstName { get; set; } public string LastName { get; set; } public int Age { get; set; } }
- 创建一个 XmlSerializer 对象,指定要序列化的类型:
XmlSerializer serializer = new XmlSerializer(typeof(Person));
- 使用
Serialize
方法将对象序列化为 XML 字符串:
Person person = new Person { FirstName = "John", LastName = "Doe", Age = 30 }; string xmlString; using (StringWriter writer = new StringWriter()) { serializer.Serialize(writer, person); xmlString = writer.ToString(); } Console.WriteLine(xmlString);
这将输出以下 XML 字符串:
John Doe 30
- 使用
Deserialize
方法将 XML 字符串反序列化为对象:
string xmlString = ""; using (StringReader reader = new StringReader(xmlString)) { Person person = (Person)serializer.Deserialize(reader); Console.WriteLine($"FirstName: {person.FirstName}, LastName: {person.LastName}, Age: {person.Age}"); } Jane Doe 28
这将输出:
FirstName: Jane, LastName: Doe, Age: 28
注意:在使用 XmlSerializer 时,需要确保类的属性具有公共 getter 和 setter 方法。如果某个类需要特殊处理,可以实现 IXmlSerializable
接口并重写 WriteXml
和 ReadXml
方法。