| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 | using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace YG.Lib{    public class XmlLib    {        private static XmlLib xml = new XmlLib();        public static XmlLib Instance { get { return xml; } }        /// <summary>        /// 保存对象到xml文件中        /// </summary>        /// <typeparam name="T">需要序列化的对象的名称</typeparam>        /// <param name="ob">对象实体</param>        /// <param name="xmlpath">需要保存对象的xml的路径</param>        /// <returns></returns>        public bool XmlSave<T>(object ob, string xmlpath)        {            try            {                System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(typeof(T));                System.IO.Stream stream = new System.IO.FileStream(xmlpath, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite);                serializer.Serialize(stream, ob);                stream.Close();                return true;            }            catch (Exception e)            {                Log.Instance.WriteLogAdd($"35-->{e.Message}");                return false;            }        }        /// <summary>        /// 打开xml对象         /// </summary>        /// <typeparam name="T">需要转换的对象类型</typeparam>        /// <param name="xmlpath">config路径</param>        /// <returns></returns>        public T XmlOpen<T>(string xmlpath)        {            T t;            try            {                if (System.IO.File.Exists(xmlpath))                {                    System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(typeof(T));                    System.IO.Stream stream = new System.IO.FileStream(xmlpath, System.IO.FileMode.OpenOrCreate);                    t = (T)serializer.Deserialize(stream);                    stream.Close();                    return t;                }                else                {                    //需要添加一个提示信息, 或者写入日志的操作                    return default(T);                }            }            catch(Exception e)            {                Log.Instance.WriteLogAdd($"67-->{ e.Message}");                return default(T);            }            // return t        }    }}
 |