当前位置 : 主页 > 编程语言 > c语言 >

什么是XML序列化?XML序列化实例介绍(附代码)

来源:互联网 收集:自由互联 发布时间:2021-09-03
本篇文章给大家带来的内容是介绍什么是XML序列化?XML序列化实例介绍(附代码)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 #region 序列化 /// summary ///
本篇文章给大家带来的内容是介绍什么是XML序列化?XML序列化实例介绍(附代码)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

#region  序列化

        /// <summary>
        /// XML序列化
        /// </summary>
        /// <param name="obj">序列对象</param>
        /// <param name="filePath">XML文件路径</param>
        /// <returns>是否成功</returns>
        public static bool SerializeToXml(object obj, string filePath)
        {
            bool result = false;

            FileStream fs = null;
            try
            {
                fs = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.ReadWrite);
                XmlSerializer serializer = new XmlSerializer(obj.GetType());
                serializer.Serialize(fs, obj);
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (fs != null)
                    fs.Close();
            }
            return result;

        }

        /// <summary>
        /// XML反序列化
        /// </summary>
        /// <param name="type">目标类型(Type类型)</param>
        /// <param name="filePath">XML文件路径</param>
        /// <returns>序列对象</returns>
        public static object DeserializeFromXML(Type type, string filePath)
        {
            FileStream fs = null;
            try
            {
                fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
                XmlSerializer serializer = new XmlSerializer(type);
                return serializer.Deserialize(fs);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (fs != null)
                    fs.Close();
            }
        }

        #endregion

以上就是什么是XML序列化?XML序列化实例介绍(附代码)的详细内容,更多请关注自由互联其它相关文章!

网友评论