Xml之Linq如何遍历存储的数据

PHPz
Freigeben: 2017-04-23 16:40:57
Original
2016 Leute haben es durchsucht

很多时候我们需要用到Xml文件,但是什么是Xml文件呢?

以下我们用一个例子来说明:testResult.xml文件

   序号   检验项目   单位   标准要求   检验结果   结论  
Nach dem Login kopieren

以上就是一个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); } }
Nach dem Login kopieren

这样我们就可以获得 标签里所有的数据了,并把他们存储到列表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); //获取指定属性的方法 } }
Nach dem Login kopieren

这样我们就获取了 标签里id属性的列表iXmlID。

Das obige ist der detaillierte Inhalt vonXml之Linq如何遍历存储的数据. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!