作者:都市养生堂 | 来源:互联网 | 2017-05-14 02:24
很多时候我们需要用到Xml文件,但是什么是Xml文件呢?以下我们用一个例子来说明:testResult.xml文件
序号
检验项目
单位
标准要求
检验结果
结论
以上就是一个Xml文件,我们知道,Xml文件是用来存储数据的,那么我们如何遍历这些数据呢?
其实最简单的方法,就是使用Linq:
private void GetTestResultXml()
{
List iTestResultXml=new List();
//定义并从xml文件中加载节点(根节点)
XElement rootNode = XElement.Load(@"..\..\Xml\testResult.xml");
//查询语句: 获得根节点下name子节点(此时的子节点可以跨层次:孙节点、重孙节点......)
IEnumerable targetNodes = from target in rootNode.Descendants("column")
select target;
foreach (XElement node in targetNodes)
{
iTestResultXml.Add(node.Value);
}
}
这样我们就可以获得 标签里所有的数据了,并把他们存储到列表iTestResultXml中。
在testResult.xml文件中,我们看到, 标签设置了本身的id,而此id并不是他的数据,而是他的一个属性,
那么如果我们想获得他的属性而不是他标签里的内容该如何获得呢?
private void GetTestResultXml()
{
List iXmlID = new List();
//定义并从xml文件中加载节点(根节点)
XElement rootNode = XElement.Load(@"..\..\Xml\testResult.xml");
//查询语句: 获得根节点下name子节点(此时的子节点可以跨层次:孙节点、重孙节点......)
IEnumerable targetNodes = from target in rootNode.Descendants("column")
select target;
foreach (XElement node in targetNodes)
{
iXmlID.Add(node.Attribute("id").Value); //获取指定属性的方法
}
}
这样我们就获取了 标签里id属性的列表iXmlID。
以上就是Xml之Linq如何遍历存储的数据的详细内容,更多请关注 第一PHP社区 其它相关文章!