当前位置:
首页 > Python基础教程 >
-
C#教程之C# 读写XML
读XML
XmlDocument xd = new XmlDocument(); string fileName = @"D:\test.xml"; xd.Load(fileName); XmlNodeList xmlNoteList = xd.GetElementsByTagName("user"); List<User> users = new List<User>(); foreach (XmlElement item in xmlNoteList) { User user = new User(); user.Id = int.Parse(item.GetAttribute("id")); XmlNodeList xnl = item.ChildNodes; user.Name = xnl[0].InnerXml; user.Age =int.Parse(xnl[1].InnerXml); user.Gender = xnl[2].InnerXml; users.Add(user); } foreach (var item in users) { Console.WriteLine(item); }
<?xml version="1.0" encoding="gb2312"?> <users> <user id='1'> <name >张三</name> <age>15</age> <gender>男</gender> </user> <user id='2'> <name>李四</name> <age>14</age> <gender>男</gender> </user> </users>
写XML
string fileName =@"D:\test.xml"; XmlDocument xmlDoc = new XmlDocument(); XmlNode header = xmlDoc.CreateXmlDeclaration("1.0","utf-8",null); xmlDoc.AppendChild(header); //创建一级节点 XmlElement rootNode = xmlDoc.CreateElement("users"); List<User> list = GetUsers(); foreach (var item in list) { XmlElement xn = InserUser(item,xmlDoc); rootNode.AppendChild(xn); } xmlDoc.AppendChild(rootNode); xmlDoc.Save(fileName); } /// <summary> /// 创建整个user的元素 /// </summary> /// <param name="user"></param> /// <param name="xmlDoc"></param> /// <returns></returns> private static XmlElement InserUser(User user, XmlDocument xmlDoc) { XmlElement xn = xmlDoc.CreateElement("user"); xn.SetAttribute("id", user.Id + ""); xn.AppendChild(GetXmlNode(xmlDoc,"name",user.Name)); xn.AppendChild(GetXmlNode(xmlDoc, "age", user.Age + "")); xn.AppendChild(GetXmlNode(xmlDoc, "gender", user.Gender)); return xn; } private static XmlElement GetXmlNode(XmlDocument xmlDoc,string name,string value) { XmlElement xn = xmlDoc.CreateElement(name); xn.InnerText = value; return xn; } private static List<User> GetUsers() { List<User> list = new List<User>(); for (int i = 0; i < 10; i++) { User user = new User(); user.Id = i; user.Name = "Name" + i; user.Age = 15; user.Gender = "男"; list.Add(user); } return list; }
实体类
class User { public int Id { set; get; } public string Name { get; set; } public int Age { get; set; } public string Gender { set; get; } public override string ToString() { return Id +","+Name + "," +Age+"," + Gender; } }
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式