C# XmlSerializer 序列化,写入文件

news/2023/6/8 5:45:16

XmlSerializer

  将对象序列化到 XML 文档中和从 XML 文档中反序列化对象,XML 序列化是将对象的公共属性 (Property) 和字段转换为序列格式(这里是指 XML)以便存储或传输的过namespace ConsoleApplication1

{public class Test{public string Id { get; set; }public string Name { get; set; }}class Program{static void Main(string[] args){Test t = new Test() { Id="0",Name="00"};t.Id = "1";t.Name = "hello";string s = SerializeObj<Test>(t);       //把Test类序列化为xml文件
Test tt = DeseriaLizeObj<Test>(s) as Test; //从xml文件,反序列化为Test类,把Id,Name的值赋值为xml中结点Id,Name,的值

//序列化后,写s入到.txt文本
//FileStream fs = new FileStream("E:\\a.txt", FileMode.Create, FileAccess.Write);//StreamWriter sw = new StreamWriter(fs);//sw.WriteLine(s);//sw.Close();//fs.Close();
//从.txt文本读取值,反序列化为Test类//StreamReader sr
= new StreamReader("E:\\a.txt",Encoding.Default);//string ss;//string sss = "";//while ((ss = sr.ReadLine()) != null)//{// sss += ss;// }//sr.Close();//Test tt = DeseriaLizeObj<Test>(sss) as Test;

Console.ReadLine(); }static T DeseriaLizeObj<T>(string xml){XmlSerializer xs = new XmlSerializer(typeof(T));StringReader sr = new StringReader(xml);object obj = xs.Deserialize(sr);sr.Close();return (T)obj;}static string SerializeObj<T>(T t){XmlSerializer xs = new XmlSerializer(typeof(T));StringWriter sw = new StringWriter();xs.Serialize(sw, t);return sw.ToString();}} }

 

 

 

转载于:https://www.cnblogs.com/wangfei1511/p/3691060.html


https://dhexx.cn/news/show-17518.html

相关文章

mysql 搭建主从复制,双主双从

双主双从 架构 一个主机 Master1 用于处理所有写请求&#xff0c;它的从机 Slave1 和另一台主机 Master2 还有它的从 机 Slave2 负责所有读请求。当 Master1 主机宕机后&#xff0c;Master2 主机负责写请求&#xff0c;Master1 、 Master2 互为备机。架构图如下: 其实和 一主…

云计算之路-阿里云上:从ASP.NET线程角度对“黑色30秒”问题的全新分析

在这篇博文中&#xff0c;我们抛开对阿里云的怀疑&#xff0c;完全从ASP.NET的角度进行分析&#xff0c;看能不能找到针对问题现象的更合理的解释。 “黑色30秒”问题现象的主要特征是&#xff1a;排队的请求&#xff08;Requests Queued&#xff09;突增&#xff0c;到达HTTP.…

mycat 分片规则-取模分片 mod-long

为方便测试&#xff0c;本实例在以下案例中测试https://blog.csdn.net/qq_41712271/article/details/114984855?spm1001.2014.3001.5501 原理 取余分片方式&#xff1a;分片键&#xff08;一个列&#xff09;与节点数量进行取余&#xff0c;得到余数&#xff0c;将数据写入对应…

微信公众帐号开发之一(java)

闲来没事&#xff0c;就记录一下微信公众平台的开发吧~ 其实微信公众平台开发没有想象中的那么困难&#xff0c;因为注册了微信公众平台帐号登录之后在开发者模式里有详细的文档&#xff0c;个人感觉介绍还是比较详细的。 微信公众平台订阅号和服务号的区别网上已经有N多的介绍…

mycat 分片规则-枚举分片-hash-int

为方便测试&#xff0c;本实例在以下案例中测试https://blog.csdn.net/qq_41712271/article/details/114984855?spm1001.2014.3001.5501 通过在配置文件中配置可能的枚举值, 指定数据分布到不同数据节点上, 本规则适用于按照省份或状态拆分数据等业务 , 配置如下: 1 schema…

mycat 分片规则-范围求模算法-auto-sharding-rang-mod

为方便测试&#xff0c;本实例在以下案例中测试https://blog.csdn.net/qq_41712271/article/details/114984855?spm1001.2014.3001.5501 该算法为先进行范围分片, 计算出分片组 , 再进行组内求模。 优点&#xff1a; 综合了范围分片和求模分片的优点。 分片组内使用求模可以…

input 类型总结

在表单中input是拥有类型最多的元素&#xff0c;在这总结一下。 typetext 输入类型是text&#xff0c;这是我们见的最多也是使用最多的&#xff0c;比如登陆输入用户名&#xff0c;注册输入电话号码&#xff0c;电子邮件&#xff0c;家庭住址等等。当然这也是Input的默认类型。…

springboot整合websocket最基础入门使用(原生API方式)

项目最终的文件结构 1 添加maven依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dependency> <dependency><groupId>org.projectlombok</groupI…

WinForm实现类似QQ停靠,显示隐藏过程添加特效效果

WinForm实现类似QQ停靠&#xff0c;显示隐藏过程添加特效效果 原文:WinForm实现类似QQ停靠&#xff0c;显示隐藏过程添加特效效果这可能是个老题长谈的问题了&#xff0c;只是在项目中会用到这个效果&#xff0c;所以今天做个记录。大家见了别喷我。在项目中的需求是这样的。 打…

Nginx简介

背景介绍Nginx&#xff08;"engine X"&#xff09;一个具有高性能的【HTTP】和【反向代理】的【WEB服务器】&#xff0c;同时也是一个【POP3/SMTP?IMAP代理服务器】&#xff0c;是由伊戈尔赛索耶夫&#xff08;俄罗斯人&#xff09;使用C语言编写的&#xff0c;Ngin…