Я разбираю XML-документ, мне нужно узнать значение gid (атрибут) (3810).
На основе SelectSingleNode()
. Я обнаружил, что найти имя атрибута и его значение непросто.
Могу ли я использовать этот метод или я должен переключиться на другой способ.
Прикреплен мой код.
Как я могу использовать book
obj, чтобы получить значение атрибута 3810
для gid
. Спасибо.
Мой файл test.xml, как показано ниже
<?xml version="1.0" ?>
<root>
<VersionInfo date="2007-11-28" version="1.0.0.2" />
<Attributes>
<AttrDir name="EFEM" DirID="1">
<AttrDir name="Aligner" DirID="2">
<AttrDir name="SequenceID" DirID="3">
<AttrObj text="Slot01" gid="3810" unit="" scale="1" />
<AttrObjCount value="1" />
</AttrDir>
</AttrDir>
</AttrDir>
</Attributes>
</root>
Я написал test.cs, как показано ниже
public class Sample
{
public static void Main()
{
XmlDocument doc = new XmlDocument();
doc.Load("test.xml");
XmlNode book;
XmlNode root = doc.DocumentElement;
book = root.SelectSingleNode("Attributes[AttrDir[@name='EFEM']/AttrDir[@name='Aligner']/AttrDir[@name='SequenceID']/AttrObj[@text='Slot01']]");
Console.WriteLine("Display the modified XML document....");
doc.Save(Console.Out);
}
}
[Обновление 06/10/2010]
-
XML файл представляет собой сложный файл. Включены тысячи гидов. Но для каждого из Xpath, gid уникален.
-
Я загружаю xml файл в элемент управления TreeView.
this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
. Когда событиеtreeView1_AfterSelect
произошло,e.Node.FullPath
вернется как значение строки. -
Я разбираю строку Value
e.Node.FullPath
. Затем я получил член XPath Above. Затем я попытался найти, какой объект gid был выбран.
Мне нужно найти значение gid как возвращаемое значение.