XML序列化反序列化C#示例代码
XML序列化代码
using System.IO; using System.Text; using System.Xml.Serialization; static string SerializeX(object obj) { using (MemoryStream memoryStream = new MemoryStream()) using (StreamReader reader = new StreamReader(memoryStream)) { var serializer = new XmlSerializer(obj.GetType()); serializer.Serialize(memoryStream, obj); memoryStream.Position = 0; return reader.ReadToEnd(); } }
xml反序列化代码
static object DeserializeX(string xml, Type toType) { using (Stream stream = new MemoryStream()) { byte[] data = System.Text.Encoding.UTF8.GetBytes(xml); stream.Write(data, 0, data.Length); stream.Position = 0; var deserializer = new XmlSerializer(toType); return deserializer.Deserialize(stream); } }