class Common
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
{
/// <summary>
/// 将XML文件写入指定的对象
/// </summary>
/// <param name="xmlFile">xml绝对路径</param>
/// <param name="type">序列的类型,要与XML对应的类</param>
/// <returns>将对象返回,当文件操作失败则返回Null值</returns>
public static object DeserializeXmlToObject(
string xmlFile, Type type)
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
{
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
XmlSerializer mySerializer =
new XmlSerializer(type);
using (FileStream stream =
new FileStream(xmlFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
{
return mySerializer.Deserialize(stream);
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
}
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
}
/// <summary>
/// 将对象写入到XML中
/// </summary>
/// <param name="obj">数据源对象</param>
/// <param name="xmlFile">目标路径</param>
/// <param name="type">转换类型</param>
public static void SerializeObjectToXml(
object obj, String xmlFile, Type type)
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
{
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
XmlSerializer mySerializer =
new XmlSerializer(type);
using (FileStream stream =
new FileStream(xmlFile, FileMode.Create, FileAccess.Write, FileShare.Read))
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
{
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
mySerializer.Serialize(stream, obj);
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
}
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
}
![根据xsd序列化与反序列化xml](https://blog.51cto.com/774588/p_w_picpaths/editer/InBlock.gif)
}