標籤:
using System;using System.Xml;using System.Xml.Serialization;using System.IO;namespace LOTool{public class LO_XMLTool{#region 還原序列化/// <summary>/// 還原序列化/// </summary>/// <param name="type">類型</param>/// <param name="xml">XML字串</param>/// <returns></returns>public static object Deserialize(Type type, string xml){try{using (StringReader sr = new StringReader(xml)){XmlSerializer xmldes = new XmlSerializer(type);return xmldes.Deserialize(sr);}}catch (Exception e){return null;}}/// <summary>/// 還原序列化/// </summary>/// <param name="type"></param>/// <param name="xml"></param>/// <returns></returns>public static object Deserialize(Type type, Stream stream){XmlSerializer xmldes = new XmlSerializer(type);return xmldes.Deserialize(stream);}#endregion#region 序列化/// <summary>/// 序列化/// </summary>/// <param name="type">類型</param>/// <param name="obj">對象</param>/// <returns></returns>public static string Serializer(Type type, object obj){MemoryStream Stream = new MemoryStream();XmlSerializer xml = new XmlSerializer(type);try{//序列化對象xml.Serialize(Stream, obj);}catch (InvalidOperationException){throw;}Stream.Position = 0;StreamReader sr = new StreamReader(Stream);string str = sr.ReadToEnd();sr.Dispose();Stream.Dispose();return str;}#endregion}}
[Unity]C#中 將XML和實體類之間進行相互轉換的工具類