#region
|
|
using System;
|
using System.IO;
|
using System.Text;
|
using System.Xml.Serialization;
|
|
#endregion
|
|
namespace CSFrameworkV5.Common.Tools
|
{
|
/// <summary>
|
/// 持久化对象为XML文件
|
/// </summary>
|
public class MyXmlSerializer
|
{
|
/// <summary>
|
/// 反序列化为对象
|
/// </summary>
|
/// <param name="type">对象类型</param>
|
/// <param name="s">持久化对象文件</param>
|
/// <returns></returns>
|
public static object Deserialize(Type type, string file)
|
{
|
var content = File.ReadAllText(file);
|
|
using (var sr = new StringReader(content))
|
{
|
var xz = new XmlSerializer(type);
|
return xz.Deserialize(sr);
|
}
|
}
|
|
/// <summary>
|
/// 序列化对象
|
/// </summary>
|
/// <param name="o">对象</param>
|
/// <param name="outFile">持久化对象文件</param>
|
/// <returns></returns>
|
public static bool Serialize(object o, string outFile)
|
{
|
using (var sw = new StringWriter())
|
{
|
var xz = new XmlSerializer(o.GetType());
|
xz.Serialize(sw, o);
|
File.WriteAllText(outFile, sw.ToStringEx(), Encoding.UTF8);
|
}
|
|
return true;
|
}
|
}
|
}
|