就这样 直接复制过去就可以用了
xml
using System.IO;
using System.Xml;
using System.Xml.Serialization;
/// <summary>
/// 对象序列化成 XML String
/// </summary>
public static string XmlSerialize<T>(T obj)
{
string xmlString = string.Empty;
try
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
using (MemoryStream ms = new MemoryStream())
{
xmlSerializer.Serialize(ms, obj);
xmlString = Encoding.UTF8.GetString(ms.ToArray());
}
}
catch
{
return null;
}
return xmlString;
}
/// <summary>
/// XML String 反序列化成对象
/// </summary>
public static T XmlDeserialize<T>(string xmlString)
{
T t = default(T);
try
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
using (Stream xmlStream = new MemoryStream(Encoding.UTF8.GetBytes(xmlString)))
{
using (XmlReader xmlReader = XmlReader.Create(xmlStream))
{
Object obj = xmlSerializer.Deserialize(xmlReader);
t = (T)obj;
}
}
}
catch
{
return t;
}
return t;
}
json
这是.net4.0后自带的,需引用dll
NETFramework\v4.0\System.Web.Extensions.dll
同时 using System.Web.Script.Serialization;
/// <summary>
/// json反序列化
/// </summary>
/// <param name="strJson"></param>
/// <returns></returns>
public static T Json2Object<T>(string strJson)
{
JavaScriptSerializer js = new JavaScriptSerializer();
try
{
return js.Deserialize<T>(strJson);
}
catch
{
return default(T);
}
}
/// <summary>
/// json序列化
/// </summary>
/// <param name="strJson"></param>
/// <returns></returns>
public static string JsonObject2String(Object obj)
{
JavaScriptSerializer js = new JavaScriptSerializer();
try
{
return js.Serialize(obj);
}
catch
{
return null;
}
}