VB.net 读取 xml问题!
<STD005><mark1id="mark1"dataType="java.lang.String"perDataProId="">AAA</mark1><workho...
<STD005>
<mark1 id="mark1" dataType="java.lang.String" perDataProId="">AAA</mark1>
<workhour id="workhour" dataType="java.lang.Float" perDataProId="">BBB</workhour>
<gridList id="gridList">
<records>
<record id="gridList_0">
<item id="Gserialno" dataType="java.lang.String" perDataProId="">1</item>
<item id="Gempno" dataType="java.lang.String" perDataProId="">176644</item>
<item id="Gempna" dataType="java.lang.String" perDataProId="">张维升</item>
</record>
<record id="gridList_1">
<item id="Gserialno" dataType="java.lang.String" perDataProId="">2</item>
<item id="Gempno" dataType="java.lang.String" perDataProId="">201798</item>
<item id="Gempna" dataType="java.lang.String" perDataProId="">赖奇男</item>
</record>
</records>
</gridList>
</STD005>
以上XML文件,如何读取到每个record里面item的id和对应的值? 展开
<mark1 id="mark1" dataType="java.lang.String" perDataProId="">AAA</mark1>
<workhour id="workhour" dataType="java.lang.Float" perDataProId="">BBB</workhour>
<gridList id="gridList">
<records>
<record id="gridList_0">
<item id="Gserialno" dataType="java.lang.String" perDataProId="">1</item>
<item id="Gempno" dataType="java.lang.String" perDataProId="">176644</item>
<item id="Gempna" dataType="java.lang.String" perDataProId="">张维升</item>
</record>
<record id="gridList_1">
<item id="Gserialno" dataType="java.lang.String" perDataProId="">2</item>
<item id="Gempno" dataType="java.lang.String" perDataProId="">201798</item>
<item id="Gempna" dataType="java.lang.String" perDataProId="">赖奇男</item>
</record>
</records>
</gridList>
</STD005>
以上XML文件,如何读取到每个record里面item的id和对应的值? 展开
1个回答
展开全部
Dim xmlDoc As New System.Xml.XmlDocument
xmlDoc.Load("c:\xml.xml") '载入xml文件
Dim Items As Xml.XmlNodeList = xmlDoc.DocumentElement.SelectNodes("//record/item") '参数为xpath查询串,前面斜杠,//:表示任何结点,/:表示根结点
For Each s As Xml.XmlNode In Items
Console.WriteLine(s.Attributes.GetNamedItem("id").Value & vbTab & s.InnerText)
Next
追问
我是用For Each di As XmlNode In fieldvalues.SelectNodes("/STD005/gridList/records").Item(0).ChildNodes循环来取得每条记录,然后每条记录的内容要写入数据库,所以每个record要分开。以上方法好像是一体循环吧?
追答
Dim fieldValues As New Xml.XmlDocument
fieldValues.Load("c:\xml.xml")
For Each record As Xml.XmlNode In fieldValues.SelectNodes("/STD005/gridList/records/record")
Console.WriteLine(record.Attributes.GetNamedItem("id").Value)
For Each Item As Xml.XmlNode In record.ChildNodes
Console.WriteLine(String.Format(" {0} {1}", Item.Attributes.GetNamedItem("id").Value, Item.InnerText))
Next
Next
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询