Привожу пример кода, который выполняет поиск атрибута "source" в файле XML, который содержит путь к корневой папке, на основании которой построена структура XML.

Смысл кода в следующем:

  • отрывается файл,
  • выполняется перебор веток,
  • выполняется проверка, что ветка - является элементом, т.е. мы пропускаем заголовок XML
  • дальше мы проверяем наличие атрибутов в ветке,
  • если атрибут не пустой, то цикл завершен.

Несмотря на кажущуюся громоздкость, код выполняется достаточно быстро.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
XmlDocument doc = new XmlDocument();
doc.Load(RecordCollection.BaseName);       
string SourceValue = "";
 
foreach (XmlNode xmlNode in doc.ChildNodes)
{
	if (xmlNode.NodeType == XmlNodeType.Element) // Проверка ноды, что это элемент
	{
		foreach (XmlAttribute xmlattribute in xmlNode.Attributes)
		{
			if (xmlattribute.Name == "source") SourceValue = xmlattribute.Value; // Поиск атрибута "source"
			if ((SourceValue != null) && (SourceValue.Length != 0)) break;
		}
	}
}

27th Июл 2016
Теги:
Загрузка Все права защищены © 2016 ИТ-Инженер (Краснодар)
 
把手拿回