首页 > 其他分享 >.net xml序列化与xml反序列化

.net xml序列化与xml反序列化

时间:2024-04-08 15:12:11浏览次数:13  
标签:xml ps ReqDto new net 序列化 XmlSerializer

序列化

string xmlStr = "";
var dto = new ReqDto() { ErrorCode = 200, ReqName = "test" };
XmlSerializer serializer = new XmlSerializer(typeof(ReqDto));
using (StringWriter textWriter = new StringWriter())
{
    serializer.Serialize(textWriter, dto);
    xmlStr = textWriter.ToString();
}

序列化2

Person[] ps = new Person[3];
            ps[0] = p;
            ps[1] = p;
            ps[2] = p;
            //使用XML序列化对象
            string fileName = @"D:\users\lizw\桌面\Programmers.xml";//文件名称与路径
            Stream fStream = new FileStream(fileName, FileMode.Create);
            XmlSerializer xmlFormat = new XmlSerializer(typeof(Person[]));
            xmlFormat.Serialize(fStream, ps);//序列化对象
            fStream.Dispose();//关闭文件

反序列化

var len = Convert.ToInt32(HttpContext.Request.ContentLength);
byte[] byt = new byte[len];
var ri = HttpContext.Request.BodyReader.AsStream().Read(byt, 0, len);
string str = Encoding.UTF8.GetString(byt, 0, len);

//如果传的是xml字符串,反序列化成对象。
ReqDto? dto = null;
XmlSerializer serializer = new XmlSerializer(typeof(ReqDto));
using (StringReader sr = new StringReader(str))
{
    object? obj = serializer.Deserialize(sr);
    if (obj != null)
    {
        dto = (ReqDto)obj;
    }
}

 

标签:xml,ps,ReqDto,new,net,序列化,XmlSerializer
From: https://www.cnblogs.com/xsj1989/p/18121210

相关文章

  • CondeseNetV2:清华与华为出品,保持特征的新鲜是特征复用的关键 | CVPR 2021
    论文提出SFR模块,直接重新激活一组浅层特征来提升其在后续层的复用效率,而且整个重激活模式可端到端学习。由于重激活的稀疏性,额外引入的计算量非常小。从实验结果来看,基于SFR模块提出的CondeseNetV2性能还是很不错的,值得学习 来源:晓飞的算法工程笔记公众号论文:CondenseNet......
  • WebSocket manager.js:115 GET http://IP:8000/socket.io/?EIO=4&transport=polling&t
    前言全局说明WebSocket报错net::ERR_CONNECTION_TIMED_OUT一、问题:WebSocket报错net::ERR_CONNECTION_TIMED_OUT二、原因:可能和后端的服务链接不上导致的三、解决方法:重启启动后端服务免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后......
  • Django框架之序列化组件
    一、为什么要序列化呢?我们在写一些项目前后端是分离的,这意味着无法直接利用django提供的模版语法来实现前后端的数据交互,需要将数据转换成前后端都能接收处理的格式,即json,一般的格式都是列表套字典。那么我的前端想拿到由ORM得到的数据库里面的一个个用户对象,而我的后端也想直接......
  • 记一次在使用Asp.Net Core 8.0 中使用Entity Framework Core的Api控制器生成Rest Api
    问题描述:把实体模型建好了,数据上下文也建好了,数据库连接字符串也在appsetting.json中配置好了,服务也注入了,然后不想一个一个的写控制器的方法,想用Api控制器生成现成的CURD方法,结果一连串的报错,在网上和GitHub也看了各位的解决办法,但都是以失望的报错,现在将解决问题的方法如下。1......
  • Linux下安装Kubernetes
    准备工作预留2G左右的内存,尽可能多,需要提前安装了dockerkubeadm:用来初始化集群的指令。kubelet:在集群中的每个节点上用来启动Pod和容器等。kubectl:用来与集群通信的命令行工具。集群安装,但只有一个节点curl-LOhttps://storage.googleapis.com/minikube/releases/lates......
  • 学习网络取证 (Network Forensics) - WiFi分析笔记
    MAC地址:MAC地址是无线接入点(WAP)的媒体访问控制地址,用于唯一标识网络中的设备。它是一个由12个十六制数字组成的地址,通常表示为6对冒号分隔的双字节(例如:00:1A:2B:3C:4D:5E)。关于MAC地址的两个例子:网络入侵检测:在网路入侵检测中,可以通过监视和记录网络流量中的MAC地址来检测潜......
  • 基于YOLOv8v7v6v5和LPRNet的中文车牌识别系统(深度学习代码+UI界面实现+训练数据集)
    摘要:之前的中文车牌识别系统升级到v2.0版本,本文详细介绍使用深度学习实现的高效中文车牌识别系统完整代码,包括训练过程、原理介绍、模型对比、系统设计等部分。采用了最新的YOLOv8、YOLOv7、YOLOv6、YOLOv5目标检测算法进行车牌检测定位,并应用LPRNet识别车牌字符,另外支持车牌颜......
  • NET领域性能最好的对象映射框架Mapster使用方法
    Mapster是一个开源的.NET对象映射库,它提供了一种简单而强大的方式来处理对象之间的映射。在本文中,我将详细介绍如何在.NET中使用Mapster,并提供一些实例和源代码。和其它框架性能对比:Mapster的安装和配置:首先,打开VisualStudio并创建一个新的.NET项目。在NuGet包管理器控制台......
  • XML文档节点导航与选择指南 | XPath基础知识
    XPath(XMLPathLanguage)是XSLT标准的主要组成部分。它用于在XML文档中浏览元素和属性,提供了一种强大的定位和选择节点的方式。XPath的基本特点代表XML路径语言:XPath是一种用于在XML文档中导航和选择节点的语言。路径样式语法:XPath使用路径表达式的“路径样式”语......
  • 学习 XSLT:XML文档转换的关键 | XSLT基础知识
    XSL(eXtensibleStylesheetLanguage)是一种用于XML的样式语言。XSL(T)语言XSLT是一种用于转换XML文档的语言。XPath是一种用于在XML文档中导航的语言。XQuery是一种用于查询XML文档的语言。它始于XSLXSL代表EXtensibleStylesheetLanguageCSS=HTM......