Xml序列化去掉命名空间,去掉申明

摘要:
#区域序列化//////序列化//////类型///对象//publicstringSerializer(Typetype,objectobj){MemoryStream=newMemoryStream

#region 序列化
        /// <summary>
        /// 序列化
        /// </summary>
        /// <param name="type">类型</param>
        /// <param name="obj">对象</param>
        /// <returns></returns>
        public  string Serializer(Type type, object obj)
        {
            MemoryStream Stream = new MemoryStream();
            XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
            ns.Add("", "");//把命名空间设置为空,这样就没有命名空间了
            XmlSerializer xml = new XmlSerializer(type);
            try
            {
                //序列化对象
                xml.Serialize(Stream, obj,ns);
            }
            catch (InvalidOperationException)
            {
                throw;
            }
            Stream.Position = 0;
            StreamReader sr = new StreamReader(Stream);
            string str = sr.ReadToEnd();

            sr.Dispose();
            Stream.Dispose();

            return str;
        }

        #endregion

  public static string ObjectToXmlSerializer(Object Obj)
        {
            XmlWriterSettings settings = new XmlWriterSettings();
            //去除xml声明
            settings.OmitXmlDeclaration = true;
            settings.Encoding = Encoding.Default;
            System.IO.MemoryStream mem = new MemoryStream();
            using (XmlWriter writer = XmlWriter.Create(mem, settings))
            {
                //去除默认命名空间xmlns:xsd和xmlns:xsi
                XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
                ns.Add("", "");
                XmlSerializer formatter = new XmlSerializer(Obj.GetType());
                formatter.Serialize(writer, Obj, ns);
            }
            return Encoding.Default.GetString(mem.ToArray());
        }
源网址:http://www.cnblogs.com/kissdodog/archive/2013/12/10/3468385.html

免责声明:文章转载自《Xml序列化去掉命名空间,去掉申明》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇webpack4.x的css单独打包、合并、自动添加前缀、压缩如何找出 nginx 配置文件的所在位置?下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

C#中使用SelectNodes筛选XML元素的问题

今天在C#中使用SelectNodes的时候出现了一些怪现象,先从还原现场开始吧。 首先创建一个简单的XML文件来试验,还是就保存为test.xml <?xml version="1.0" encoding="utf-8" ?> <root> <users job="salas"> <user&g...

Struts核心技术简介

Struts核心技术简介 1、Struts内部机制 Struts是一种基于MVC经典设计模式的开发源代码的应用框架,它通过把Servlet、JSP、JavaBean、自定义标签和信息资源整合到一个统一的框架中,为Web开发提供具有高可配置性的MVC开发模式。 Struts体系结构实现了MVC设计模式的概念,它将Model、View、和Controller分...

jackson实体转json时 为NULL不参加序列化的汇总

首先加入依赖<dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId></dependency> 方法一、实体上使用 @JsonInclude(JsonInclude.Include....

springboot配置rabbitmq的序列化反序列化格式

SpringBoot封装了rabbitmq中,发送对象和接收对象时,会统一将对象和消息互相转换 会用到MessageConverter转换接口 在发送消息时, 会将Object转换成Message Message createMessage(Object object, MessageProperties messageProperties) 接收消息...

jackson 常用注解,比如忽略某些属性,驼峰和下划线互转

一般情况下使用JSON只使用了java对象与字符串的转换,但是,开发APP时候,我们经常使用实体类来做转换;这样,就需要用到注解;Jackson默认是针对get方法来生成JSON字符串的,可以使用注解来做一些特殊用途;常见的使用如下:1 排除属性@JsonIgnore,一般标记在属性或方法上;作用于序列化与反序列化,在pure pojo中使用的比较少,但是...

SpringMVC介绍及参数绑定

本节内容: SpringMVC介绍 入门程序 SpringMVC架构 SpringMVC整合MyBatis 参数绑定 SpringMVC和Struts2的区别 一、SpringMVC介绍 1. 什么是SpringMVC Spring web mvc和Struts2都属于表现层的框架,它是Spring框架的一部分,我们可以从Spring的整体结构中看得出...