加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XmlSerializationHelper Xml序列化工具

发布时间:2020-12-16 05:21:44 所属栏目:百科 来源:网络整理
导读:把对象序列化成 xml文件,只能对简单实体类对象序列化哦 /// summary /// XmlSerializationHelper Xml序列化工具 /// /summary public class XmlSerializationHelper { #region --- Functions Begin --- /// summary /// 从Xml文档读取获得对象 /// /summary

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



    /// <summary>
    /// XmlSerializationHelper Xml序列化工具
    /// </summary>
    public class XmlSerializationHelper
    {
        #region --- Functions Begin ---

        /// <summary>
        /// 从Xml文档读取获得对象
        /// </summary>
        /// <typeparam name="T">对象类</typeparam>
        /// <param name="fileFullPath">xml文件完整路径</param>
        /// <returns>对象实体,失败抛出异常</returns>
        public static T LoadXmlFile<T>(string fileFullPath) where T : new()
        {
            FileStream fs = null;

            try
            {
                fs = new FileStream(fileFullPath,FileMode.Open,FileAccess.Read,FileShare.ReadWrite);
                XmlSerializer xml = new XmlSerializer(typeof(T));
                return (T)xml.Deserialize(fs);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (fs != null)
                {
                    fs.Close();
                }
            }
        }

        /// <summary>
        /// 保存对象到Xml文档
        /// </summary>
        /// <typeparam name="T">对象类</typeparam>
        /// <param name="t">对象</param>
        /// <param name="fileFullPath">xml文件完整路径</param>
        /// <returns>成功返回 True 抛出异常</returns>
        public static bool Save<T>(T t,string fileFullPath) where T : new()
        {
            bool bl = false;
            FileStream fs = null;
            try
            {
                fs = new FileStream(fileFullPath,FileMode.OpenOrCreate,FileAccess.Write,FileShare.ReadWrite);

                XmlSerializer xml = new XmlSerializer(typeof(T));
                xml.Serialize(fs,t);
                bl = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (fs != null)
                {
                    fs.Close();
                }
            }
            return bl;
        }
        #endregion --- Functions End ---
    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读