c# XML读取
System.Xml 命名空间
https://msdn.microsoft.com/zh-cn/library/gg145036(v=vs.110).aspx
一、读取
1.通过 XmlDocument获取稳定内容
2.通过XmlNodeList 找到节点数据
private void List_Click(object sender, RoutedEventArgs e)
{
string xmlStr = getData(); StringBuilder rtn = new StringBuilder();
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xmlStr);
XmlNodeList xmlNodeList = xmlDoc.GetElementsByTagName("root");
foreach (XmlNode xmlNode in xmlNodeList)
{
//家长节点
XmlNodeList childXmlNodes1 = xmlNode.ChildNodes;
foreach (XmlNode childXmlNode1 in childXmlNodes1)
{
if (childXmlNode1.Name == "resultInfo")
{
//成员列表
XmlNodeList childXmlNodes2 = childXmlNode1.ChildNodes; foreach (XmlNode childXmlNode2 in childXmlNodes2)
{
if (childXmlNode2.Name == "NAME")
{
rtn.Append(childXmlNode2.InnerText);
}
}
}
}
} }
private string getData()
{
return "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + @"
<root>
<resultInfo>
<NAME>姓名</NAME>
<SEX>性别</SEX>
<error_msg> 成功!或者error:xxx </error_msg>
<remark>备注</remark>
</resultInfo>
</root>
";
}
读取方法扩充
public static LoginResponse GetLoginResponse(string xmlStr)
{
LoginResponse response = new LoginResponse(); XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xmlStr); XmlNode errorNode = xmlDoc.SelectSingleNode("//Error");
if (errorNode != null)
{
response.ResultErrorCode = (errorNode.SelectSingleNode("ErrorCode")).InnerText;
response.ResultErrorText = (errorNode.SelectSingleNode("ErrorText")).InnerText;
response.ResultErrorDescription = (errorNode.SelectSingleNode("ErrorDescription")).InnerText;
} return response;
} 数据:
<?xml version="1.0" encoding="UTF-8"?>
<RESULT>
<Error>
<ErrorCode>-</ErrorCode>
<ErrorText>ErrorText</ErrorText>
<ErrorDescription>ErrorDescription</ErrorDescription>
</Error></RESULT>
二、设置
三、常见问题
1.XmlDocument加载xml文件时,有中文可能会报错,提示配置错误?
因为编码问题造成的,解决方法:
修改XML头部为:<?xml version='1.0' encoding="GB2312"?>
c# XML读取的更多相关文章
- xml 读取递归算法
xml 读取递归算法:
- paip.获取proxool的配置 xml读取通过jdk xml 初始化c3c0在代码中总结
paip.获取proxool的配置 xml读取通过jdk xml 初始化c3c0在代码中 xml读取通过jdk xml 初始化c3c0在代码中.. ... 作者Attilax 艾龙, EMAI ...
- Linq to XML 读取XML 备忘笔记
本文转载:http://www.cnblogs.com/infozero/archive/2010/07/13/1776383.html Linq to XML 读取XML 备忘笔记 最近一个项目中有 ...
- Xml读取异常--Invalid byte 1 of 1-byte UTF-8 sequence
xml读取异常Invalid byte 1 of 1-byte UTF-8 sequence org.dom4j.DocumentException: Invalid byte 1 of 1-byte ...
- C#基础笔记---浅谈XML读取以及简单的ORM实现
背景: 在开发ASP.NETMVC4 项目中,虽然web.config配置满足了大部分需求,不过对于某些特定业务,我们有时候需要添加新的配置文件来记录配置信息,那么XML文件配置无疑是我们选择的一个方 ...
- C#基础---浅谈XML读取以及简单的ORM实现
背景: 在开发ASP.NETMVC4 项目中,虽然web.config配置满足了大部分需求,不过对于某些特定业务,我们有时候需要添加新的配置文件来记录配置信息,那么XML文件配置无疑是我们选择的一个方 ...
- 【BUG】xml读取异常Invalid byte 1 of 1-byte UTF-8 sequence
来自http://blog.csdn.net/chenyanbo/article/details/6866941 xml读取异常Invalid byte 1 of 1-byte UTF-8 seque ...
- C#使用Linq To XML读取XML,Linq生成XML,Linq创建带属性或带节点XML
using System; using System.Linq; using System.Xml.Linq; namespace Sample2 { class Program { static v ...
- winform,xml读取与写入
创建两个xml文件,一个 xml做为模板配置项,另一个做为临时接收数据. private static string localPath = System.Environment.CurrentDir ...
- Open Xml 读取Excel中的图片
在我的一个项目中,需要分析客户提供的Excel, 读出其中的图片信息(显示在Excel的第几行,第几列,以及图片本身). 网络上有许多使用Open Xml插入图片到Word,Excel的文章, 但 ...
随机推荐
- Daily Scrum 10.23
(写于10.22周四) 说下现在的人员情况: 康家华请假至下周一,刘彦熙至周五18:00,张启东至周六中午. 其他人正常工作. 然后是现在的进度情况: 已经完成服务器数据库搭建,以及基础的注册登陆功能 ...
- JavaBeans与内省(Introspector)
JavaBean与Introspector 反射和内省操作很多时候都是在以后要做框架的时候作用非常大. 现在你学的是面向对象编程,即:你所写代码都能够找到对应的类或接口,找到具体的方法写出对应的 ...
- Linux命令常用
数据库:查看日志 vim /var/log/mysqld.log
- 组件 --BreadCrumb--面包屑
面包屑组件多用于导航栏,对于大型网站,做面包屑导航栏 .breadcrumb .breadcrumb-item .active:表示现在正处在该页面 效果截图: 代码: <nav> < ...
- Final版本发布评论
1.飞天小女警组做的礼物挑选小工具,相比较beta版本并没有太大的改动,新增添了“猜你喜欢”模块,在最后给出的礼物推荐下面会给出三个猜你喜欢的礼物.这样解决了推荐礼物的单一,也让礼物推荐变得更有趣了. ...
- 微信 小程序组件 加入购物车全套 one wxss
//1,wxss /*外部容器*/ .container { display: flex; flex-direction: column; align-items: center; justify-c ...
- OneZero第四周——预完成功能点统计
本周OneZero将完成“统计”功能. 功能点统计如下: 1.主页单击记录,进入修改界面,修改记录. 2.主页长按记录,出现删除按钮,删除记录. 3.全部记录按分类进行饼图显示. 4.全部记录按分类进 ...
- 微信小程序初窥-环境搭建
关于微信小程序的背景知识,在此不做阐述,可以自行搜索了解.本文将介绍微信小程序的账号的注册,IDE的下载,创建一个实例小程序. 1.注册小程序 前去链接:https://mp.weixin.qq.co ...
- HUAS 2018暑假第一周比赛-题解
小朋友们有问题评论区 :) B. 子串计算 难度系数 : ☆ Main idea : 模拟 暴力 按照题目的要求一步一步来就行了 之所以可行的原因是从左往右扫,如果扫到一个子串,把它删除掉之后,假设当 ...
- [代码]--ORA-01745: 无效的主机/绑定变量名 ORA-00917: 缺失的逗号 oracle日期格式错误
今天在oracle中执行插入语句的时候报了一个奇怪的错误,在程序中报的错误是ORA-01745: 无效的主机/绑定变量名,网上一查说是缺失逗号,在查询分析器执行的时候报缺失的逗号,仔细看了一下也没有缺 ...