微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

exercise: 序列化和反序列化Xml --CSharp

 

    class XmlHelper
    {


        public XmlHelper()
        {
        }



        /// <summary>
        /// 读取 xml 文件内容
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="fileName"></param>
        /// <returns></returns>
        public static T Load<T>(string fileName)
        {
            XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));

            using (var fs = new FileStream(fileName, FileMode.Open, FileAccess.Read))
            {
                return (T)xmlSerializer.Deserialize(fs);
            }
        }

        /// <summary>
        /// 写入 xml 文件
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="fileName"></param>
        /// <param name="data"></param>
        public static void Write<T>(string fileName, T data)
        {
            XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));

            using (var fs = new FileStream(fileName, FileMode.Truncate, FileAccess.Write))
            {
                xmlSerializer.Serialize(fs, data);
            }
        }

    }

 

    class SomeXmlConfig
    {

        [XmlElement("hello")]
        public string Hello { get; set; }

        [XmlElement("world")]
        public string World { get; set; }


        public SomeXmlConfig()
        {
        }

    }

 

 

 

 

 

--- THE END ---

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。