Как, в XML-документе, при помощи фреймворка .NET, получить данные из текстового узла некоторого элемента, обладающего определенным атрибутом?

Здравствуйте.

Есть некоторый XLM-код:
<ROOT>
    <data>
        <record>
            <field name="Country or Area">Australia</field>
            <field name="Year">2012</field>
            <field name="Value">0.411643502534169</field>
            <field name="Value Footnotes"></field>
        </record>
        <record>
            <field name="Country or Area">Russia</field>
            <field name="Year">2011</field>
            <field name="Value">0.427343851420981</field>
            <field name="Value Footnotes"></field>
        </record>
        <record>
            <field name="Country or Area">Spain</field>
            <field name="Year">2010</field>
            <field name="Value">0.438586168922878</field>
            <field name="Value Footnotes"></field>
        </record>
    </data>
</ROOT>


Мне из этого XML-кода необходимо получить текстовые данные из всех 3-х узловых элементов "field" с атрибутом "Country or Area".

Как, при помощи фреймворка .NET, извлечь строковые данные из текстовых узлов элементов "field" с атрибутом "Country or Area"?
  • Вопрос задан
  • 225 просмотров
Решения вопроса 1
Вот пример на C# думаю переписать на VB без проблем. Для целей поиска чего либо в XML существует XPATH.

using System;
using System.Linq;
using System.Xml.Linq;
using System.Xml.XPath;
					
public class Program
{
	public static void Main()
	{
		var xml = XDocument.Load("test.xml");
		
		xml.XPathSelectElements("//field[@name='Country or Area']").ToList().ForEach(n =>
			Console.WriteLine(n.Value)
		);
	}
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы