xml序列化
发布时间:2020-12-16 23:46:32 所属栏目:百科 来源:网络整理
导读:/// summary /// xml序列化 /// /summary /// typeparam name="T" 类型 /typeparam /// param name="obj" 值 /param /// returns/returns public static string XmlSerializeT( this T obj) { if (obj == null ) throw new NullReferenceException( " 空 " )
/// <summary> /// xml序列化 /// </summary> /// <typeparam name="T">类型</typeparam> /// <param name="obj">值</param> /// <returns></returns> public static string XmlSerialize<T>(this T obj) { if (obj == null) throw new NullReferenceException("空"); var settings = new XmlWriterSettings() { OmitXmlDeclaration = true,//去掉xml声明 Encoding = Encoding.Default }; var output = new StringBuilder(); using (XmlWriter writer = XmlWriter.Create(output,settings)) { ////去掉前缀和命名空间 var ns = new XmlSerializerNamespaces(); ns.Add(string.Empty,string.Empty); var serializer = new XmlSerializer(obj.GetType()); serializer.Serialize(writer,obj,ns); } return output.ToString(); } /// <summary> /// xml反序列化 /// </summary> /// <typeparam name="T">返回对象类型</typeparam> /// <param name="strXML">值</param> /// <returns></returns> public static T DeserializeXml<T>(this string strXML) where T : class { try { using (StringReader sr = new StringReader(strXML)) { XmlSerializer serializer = new XmlSerializer(typeof(T)); return serializer.Deserialize(sr) as T; } } catch (Exception ex) { return null; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |