XML序列化和反序列化 以及相关类的写法

类的写法:

省网办数据对接中运用到

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Serialization;namespace SWBExchange.Common.Entities
{public class Body{[XmlElement(ElementName = "BasicInfo")]public BasicInfo BasicInfo { get; set; }[XmlElement(ElementName = "UserInfos")]public UserInfos UserInfos { get; set; }[XmlElement(ElementName = "OrgInfos")]public OrgInfos OrgInfos { get; set; }[XmlElement(ElementName = "ServiceInfo")]public ServiceInfo ServiceInfo { get; set; }[XmlElement(ElementName = "ApasInfo")]public ApasInfo ApasInfo { get; set; }[XmlElement(ElementName = "Review")]public Review Review { get; set; }[XmlElement(ElementName = "Node")]public Node Node { get; set; }[XmlElement(ElementName = "Proposer")]public Proposer Proposer { get; set; }[XmlElement(ElementName = "Operator")]public Operator Operator { get; set; }[XmlArray("Expresses"), XmlArrayItem("Express")]public List<Express> Expresses { get; set; }[XmlArray("FormInfos"), XmlArrayItem("FormInfo")]public List<FormInfo> FormInfos { get; set; }[XmlArray("Attrs"), XmlArrayItem("Attr")]public List<Attr> Attrs { get; set; }[XmlArray("Licenses"), XmlArrayItem("License")]public List<License> Licenses { get; set; }[XmlElement(ElementName = "SMS")]public SMS SMS { get; set; }}
}
    public class Helper{#region 反序列化public static string ObjectToXML<T>(T t){return ObjectToXML<T>(t, Encoding.UTF8);}/// <summary>/// 将object对象序列化成XML/// </summary>/// <param name="o"></param>/// <returns></returns>public static string ObjectToXML<T>(T t, Encoding encoding){XmlSerializer ser = new XmlSerializer(t.GetType());Encoding utf8EncodingWithNoByteOrderMark = new UTF8Encoding(false);using (MemoryStream mem = new MemoryStream()){using (XmlTextWriter writer = new XmlTextWriter(mem, utf8EncodingWithNoByteOrderMark)){XmlSerializerNamespaces ns = new XmlSerializerNamespaces();ns.Add("", "");ser.Serialize(writer, t, ns);return encoding.GetString(mem.ToArray());}}}#endregion#region 序列化public static T XMLToObject<T>(string source){return XMLToObject<T>(source, Encoding.UTF8);}public static T XMLToObject<T>(string source, Encoding encoding){XmlSerializer mySerializer = new XmlSerializer(typeof(T));using (MemoryStream stream = new MemoryStream(encoding.GetBytes(source))){return (T)mySerializer.Deserialize(stream);}}#endregion

  

转载于:https://www.cnblogs.com/wenghaowen/p/4184674.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/459776.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python-main

当你打开一个.py文件时,经常会在代码的最下面看到if __name__ __main__:,现在就来介 绍一下它的作用.模块是对象&#xff0c;并且所有的模块都有一个内置属性 __name__。一个模块的 __name__ 的值取决于您如何应用模块。如果 import 一个模块&#xff0c;那么模块__name__ 的值…

自己动手,实现一种类似ListT的数据结构(二)

前言&#xff1a; 首先&#xff0c;小匹夫要祝各位看官圣诞快乐&#xff0c;新年愉快&#xff5e;。上一篇文章《自己动手&#xff0c;实现一种类似List<T>的数据结构(一&#xff09;》 介绍了一下不依靠List<T>实现的各种接口&#xff0c;仿造一个轻量级数据结构的…

java spring jdbc_Spring与JDBC支持

JDBC是一种标准Java编程接口(JAVA API)&#xff0c;可以将Java编程语言与广泛数据库进行连接。JDBC API库包含下面提到的每个任务&#xff0c;都是与数据库相关的常用用法。数据库的连接创建sql语句执行或提交sql语句查看或修改查询到的记录从根本上说&#xff0c;JDBC是一种规…

局域网内连接MySQL

2019独角兽企业重金招聘Python工程师标准>>> 局域网内连接MySQL 博客分类&#xff1a; MySQL MySQL局域网连接grant 我们都知道连接MySQL一般用的语句就是 jdbc:mysql://localhost:3306/database&#xff0c; 但是当你要连接到其他机器上的mysql的时候&#xff0c;…

java打印的globa类l_Spring异常集中处理和日志集中打印

使用ControllerAdvice和ExceptionHandler处理Controller层的异常&#xff1a;ControllerAdvicepublic class GlobalExceptionHandler {private static final Logger LOGGER LoggerFactory.getLogger(GlobalExceptionHandler.class);/*** 处理所有不可知的异常* param e* retur…

[leetcod] Clone Graph

题目&#xff1a; Clone an undirected graph. Each node in the graph contains a label and a list of its neighbors. OJs undirected graph serialization: Nodes are labeled uniquely. We use # as a separator for each node, and , as a separator for node label and …

【iOS7一些总结】9、与列表显示(在):列表显示UITableView

列表显示&#xff0c;顾名思义它是在一个列表视图的形式显示在屏幕上的数据的内容。于ios在列表视图UITableView达到。这个类在实际应用中频繁&#xff0c;是很easy理解。这里将UITableView的主要使用方法总结一下以备查。UITableView定义在头文件UITableView.h中&#xff0c;详…

java聊天软件课程设计_[计算机课程设计] JAVA课程设计-聊天室

本系统基于C/S模式。新的时代,新的世纪,在当今这个发达的信息时代,网上办公,极为普遍,生活变的简单化,人们在家就可以办公,是信息化时代的标志.我经过多方的调查和研究,并灵活运用了自己所学的知识,编写了这个非常适用的一个小软件.它是通过RMI通信协议,利用JAVA的多线程技术,将…

iOS 获取手机信息

待续&#xff1b;转载于:https://www.cnblogs.com/xieyier/p/4194271.html

show status和show variables区别解析

1.show status 查看系统运行的实时状态&#xff0c;便于dba查看mysql当前运行的状态&#xff0c;做出相应优化&#xff0c;动态的&#xff0c;不可认为修改&#xff0c;只能系统自动update。MariaDB [(none)]> show status like %conn%;--------------------------------…

【Javascript 拾遗之三】Closure 闭包

说起闭包这个概念&#xff0c;其实是离散数学中的一种定义&#xff0c;而很程序员们耳熟能详但不一定能说清楚它的含义和用途。本文先简单地介绍下离散数学中的闭包&#xff0c;然后再探讨一下Javascript语言中的闭包是如何创建和应用的。 Closure 闭包 1、闭包的定义 -离散数学…

java递归空瓶换饮料_问题描述:一次买n瓶可乐,k个空瓶可以换一瓶饮料,那么一共能喝多少瓶饮料? | 学步园...

/***问题描述&#xff1a;一次买n瓶可乐&#xff0c;k个空瓶可以换一瓶饮料&#xff0c;那么一共能喝多少瓶饮料&#xff1f;*下面用不同的方法实现了这个问题(Java实现)&#xff1a;*1.递归方法*2.非递归方法*3.公式法*/public class CocaCola{public int Count(int n, int k)…

SpringMVC(一):环境搭建

2019独角兽企业重金招聘Python工程师标准>>> //TODO 转载于:https://my.oschina.net/u/1020238/blog/505272

DockPanel 类

DockPanel 类 .NET Framework 4.5其他版本此主题尚未评级 - 评价此主题定义您可水平或垂直排列子元素的区域&#xff0c;互相。 继承层次结构 System.Object System.Windows.Threading.DispatcherObjectSystem.Windows.DependencyObjectSystem.Windows.Media.VisualSystem.Wind…

java动态json入库_从JSon File动态生成模式

一些兴趣点&#xff1a;1)您不需要数据帧来加载您的json架构 . 模式在驱动程序上加载和执行&#xff0c;因为不需要分发那些不必要的开销2)我构造了一个JColumn对象的List&#xff0c;并将它传递给StructType以动态构造模式3)inferSchema应该是false&#xff0c;因为我们明确定…

【分布式计算】MapReduce的替代者-Parameter Server

原文&#xff1a;http://blog.csdn.net/buptgshengod/article/details/46819051 首先还是要声明一下&#xff0c;这个文章是我在入职阿里云1个月以来&#xff0c;对于分布式计算的一点肤浅的认识&#xff0c;可能有些地方不够妥善&#xff0c;还请看官可以指出不足的地方&#…

java迭代器逆序_迭代器

提供一种方法顺序访问一个聚合对象中的各个元素&#xff0c;而又不需要暴露该对象的内部表示。迭代器模式(Iterator)实际上在Java的集合类中已经广泛使用了。我们以List为例&#xff0c;要遍历ArrayList&#xff0c;即使我们知道它的内部存储了一个Object[]数组&#xff0c;也不…

iOS开发多线程篇—线程安全

iOS开发多线程篇—线程安全 一、多线程的安全隐患 资源共享 1块资源可能会被多个线程共享&#xff0c;也就是多个线程可能会访问同一块资源 比如多个线程访问同一个对象、同一个变量、同一个文件 当多个线程访问同一块资源时&#xff0c;很容易引发数据错乱和数据安全问题 示例…

java程序可分为两个基本文件_1 Java语言概述答案

第1章 Java语言概述一、判断题1&#xff0e;Java语言是一种解释执行的语言&#xff0c;这个特点是Java语言的一个缺点。(F)2&#xff0e;Java源程序的文件名一定要与文件中某个类的名称一致。(T)3&#xff0e;Java语言采用面向对象的思想编程&#xff0c;具有跨平台、分布式、多…

JQuery中的siblings()是什么意思

siblings()函数用于选取每个匹配元素的所有同辈元素(不包括自己)&#xff0c;并以jQuery对象的形式返回。转载于:https://www.cnblogs.com/DTWolf/p/4807277.html