首页 > 其他分享 >xml 序列化

xml 序列化

时间:2023-04-28 23:24:36浏览次数:45  
标签:xml obj string using var new 序列化 public

using System.Text;
using System.Xml;
using System.Xml.Serialization;

var p = new Person
{
    Id = 1,
    Name = "Furion",
    Items = new List<string> { "Furion", "百小僧" }
};

var xml = XmlSerialize(p);

Console.ReadKey();

static string XmlSerialize(object obj)
{
    if (obj == null) throw new ArgumentNullException(nameof(obj));

    var xs = new XmlSerializer(obj.GetType());
    using var stream = new MemoryStream();
    var setting = new XmlWriterSettings
    {
        Encoding = new UTF8Encoding(false),
        Indent = true
    };

    using var writer = XmlWriter.Create(stream, setting);

    var ns = new XmlSerializerNamespaces();
    ns.Add(string.Empty, string.Empty);
    xs.Serialize(writer, obj, ns);

    return Encoding.UTF8.GetString(stream.ToArray());
}

[XmlRoot("person")]
public class Person
{
    [XmlAttribute("id")]
    public int Id { get; set; }

    [XmlElement("name")]
    public string Name { get; set; }

    [XmlArray("items")]
    [XmlArrayItem("item")]
    public List<string> Items { get; set; }
}

  https://www.cnblogs.com/goody9807/p/3934892.html

标签:xml,obj,string,using,var,new,序列化,public
From: https://www.cnblogs.com/baiqian/p/17363378.html

相关文章

  • MAVEN 配置nexus setting.xml 配置
    MAVEN配置nexussetting.xml配置 <mirror> <id>nexus</id> <mirrorOf>*</mirrorOf> <url>http://192.168.1.104:8081/nexus/content/groups/public/</url> </mirror> <profile> <id>nexus&......
  • web.xml报错
    web.xml报错 Thecontentofelementtype"web-app"mustmatch"(icon?,display-name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,servlet-mapping*,session-config?,mime-mapping*,welcome-file-list?,err......
  • XMLHttpRequest发请求的步骤
    /*具体来说,AJAX包括以下几个步骤。以下是AJAX发请求的步骤1.创建XMLHttpRequest实例2.发出HTTP请求3.接收服务器传回的数据4.更新网页数据*///实例化一个对象xhrvarxhr=newXMLHttpRequest(),method="GET",url="https://www.baidu......
  • Spring XML配置的12个技巧
    Spring是一个强有力的java程序框架,其被广泛应用于java的程序中。它用POJO提供了企业级服务。Spring利用依赖注入可以获得简单而有效的测试能力。Springbeans,依赖关系,以及服务所需要的bean都将在配置文件中予以描述,配置文件一般采用XML格式。然而XML配置文件冗长而不易使用,在你进......
  • 【解决】axios 下载文件 Failed to read the 'responseText' property from 'XMLHttp
    主要解决以下两个问题问题一:idm一些网站不允许请求同一文件两次故障原因:IDM在发神经因为它检测到浏览器集成插件未安装,所以诱导你安装。实际上,装了插件问题也会出现。改参数都没用。1.很可能是你点击网页的下载链接有问题(换个网页下载试试,就不提示了),Edge浏览器一直会欺......
  • API 架构风格演化史:CORBA-XMLRPC(SOAP)-REST-JSONRPC-GraphQL-gRPC
    我们先来看一张 TwitterArchitecture2022CodeFirstv.sAPIFirst软件开发理念的改变下图显示了代码优先开发和API优先开发之间的差异。为什么我们要考虑API优先设计?微服务增加了系统的复杂性。我们有单独的服务来服务系统的不同功能。尽管这种体系结构促进了职责的脱钩和分......
  • Protostuff对象序列化工具
    VO.javaimportjava.io.Serializable;/***[概要]java对象序列化工具<br/>*[环境]J2SE1.7*@author研发部-ly*@version1.0*/publicclassVO<T>implementsSerializable{privateTvalue;publicVO(Tvalue){this.value=value;......
  • 高性能序列化、反序列化protostuff 使用
    1、引用jar包:pom.xml:<!--protostuff--><dependency><groupId>com.dyuproject.protostuff</groupId><artifactId>protostuff-core</artifactId><version>1.0.7</version>......
  • 面试官:说说你对序列化的理解
    关注“Java后端技术全栈”回复“000”获取大量电子书本文主要内容背景在Java语言中,程序运行的时候,会产生很多对象,而对象信息也只是在程序运行的时候才在内存中保持其状态,一旦程序停止,内存释放,对象也就不存在了。怎么能让对象永久的保存下来呢?--------对象序列化。何为序列化和反序......
  • Fastjson反序列化漏洞
    Fastjson反序列化漏洞目录Fastjson反序列化漏洞一、Fastjson介绍1、什么是fastjson?2、fastjson的优点二、影响范围:三、漏洞原理四、漏洞利用五、漏洞发现六、漏洞修复一、Fastjson介绍1、什么是fastjson?fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Ja......