zoukankan      html  css  js  c++  java
  • .net core XML 解析帮助类

        public class XSerializer
        {
            /// <summary>
            /// 将对象序列化为xml字符串
            /// </summary>
            /// <typeparam name="T">类型<peparam>
            /// <param name="t">对象</param>
            public static string ObjectToXml<T>(T t) where T : class
            {
                XmlSerializer formatter = new XmlSerializer(typeof(T));
                using (MemoryStream stream = new MemoryStream())
                {
                    XmlSerializerNamespaces namespaces = new XmlSerializerNamespaces();
                    namespaces.Add(string.Empty, string.Empty);
                    formatter.Serialize(stream, t, namespaces);
                    string result = Encoding.UTF8.GetString(stream.ToArray());
                    return result;
                }
            }
            /// <summary>
            /// 序列化成XML 清空格式
            /// </summary>
            public static string ObjectToXml<T>(T t, Encoding encoding) where T : class
            {
                XmlSerializer formatter = new XmlSerializer(typeof(T));
                using MemoryStream stream = new MemoryStream();
                XmlSerializerNamespaces namespaces = new XmlSerializerNamespaces();
                namespaces.Add(string.Empty, string.Empty);
                XmlTextWriter xmlTextWriter = new XmlTextWriter(stream, encoding);
                xmlTextWriter.Formatting = System.Xml.Formatting.None;
                formatter.Serialize(xmlTextWriter, t, namespaces);
                xmlTextWriter.Flush();
                xmlTextWriter.Close();
                string result = encoding.GetString(stream.ToArray());
                return result;
            }
    
            /// <summary>
            /// 字符串转换为对象
            /// </summary>
            public static T XmlToObject<T>(string xml) where T : class
            {
                XmlSerializer formatter = new XmlSerializer(typeof(T));
                using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(xml)))
                {
                    T result = formatter.Deserialize(ms) as T;
                    return result;
                }
            }
        }
    
  • 相关阅读:
    发送邮件程序
    T-SQL存储过程、游标
    GPS经纬度换算成XY坐标
    开博了
    你应该知道的 50 个 Python 单行代码
    想提升java知识的同学请进
    adb工具包使用方法
    红米note3刷安卓原生
    hadoop 使用和javaAPI
    django学习——url的name
  • 原文地址:https://www.cnblogs.com/rsls/p/14851990.html
Copyright © 2011-2022 走看看