XmlSerializationHelper Xml序列化工具

前端之家收集整理的这篇文章主要介绍了XmlSerializationHelper Xml序列化工具前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

把对象序列化成 xml文件,只能对简单实体类对象序列化哦



  1. /// <summary>
  2. /// XmlSerializationHelper Xml序列化工具
  3. /// </summary>
  4. public class XmlSerializationHelper
  5. {
  6. #region --- Functions Begin ---
  7.  
  8. /// <summary>
  9. /// 从Xml文档读取获得对象
  10. /// </summary>
  11. /// <typeparam name="T">对象类</typeparam>
  12. /// <param name="fileFullPath">xml文件完整路径</param>
  13. /// <returns>对象实体,失败抛出异常</returns>
  14. public static T LoadXmlFile<T>(string fileFullPath) where T : new()
  15. {
  16. FileStream fs = null;
  17.  
  18. try
  19. {
  20. fs = new FileStream(fileFullPath,FileMode.Open,FileAccess.Read,FileShare.ReadWrite);
  21. XmlSerializer xml = new XmlSerializer(typeof(T));
  22. return (T)xml.Deserialize(fs);
  23. }
  24. catch (Exception ex)
  25. {
  26. throw ex;
  27. }
  28. finally
  29. {
  30. if (fs != null)
  31. {
  32. fs.Close();
  33. }
  34. }
  35. }
  36.  
  37. /// <summary>
  38. /// 保存对象到Xml文档
  39. /// </summary>
  40. /// <typeparam name="T">对象类</typeparam>
  41. /// <param name="t">对象</param>
  42. /// <param name="fileFullPath">xml文件完整路径</param>
  43. /// <returns>成功返回 True 抛出异常</returns>
  44. public static bool Save<T>(T t,string fileFullPath) where T : new()
  45. {
  46. bool bl = false;
  47. FileStream fs = null;
  48. try
  49. {
  50. fs = new FileStream(fileFullPath,FileMode.OpenOrCreate,FileAccess.Write,FileShare.ReadWrite);
  51.  
  52. XmlSerializer xml = new XmlSerializer(typeof(T));
  53. xml.Serialize(fs,t);
  54. bl = true;
  55. }
  56. catch (Exception ex)
  57. {
  58. throw ex;
  59. }
  60. finally
  61. {
  62. if (fs != null)
  63. {
  64. fs.Close();
  65. }
  66. }
  67. return bl;
  68. }
  69. #endregion --- Functions End ---
  70. }

猜你在找的XML相关文章