我需要帮助从xml文件中选择多个元素。我目前只知道如何选择一个,并试图找出不止一个是伤害我的微不足道的kopri。谢谢你的时间。
Imports System.Xml
Partial Class ex01_Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
'instantiate a reader'
Dim reader As New XmlTextReader(Server.MapPath("~/ex01/docP.xml"))
'declare variable to record when a <name> element is found'
Dim bName As Boolean = False
'iterate through all of the nodes in the XML document'
While reader.Read()
'look at the node type of each node'
Select Case reader.NodeType
'if node is a <name> element, remember it'
Case XmlNodeType.Element
If reader.Name = "title" Then
bName = True
End If
'if node is text & previous node was <name>, add it to Label'
Case XmlNodeType.Text
If bName Then
lblDisplayXml.Text &= reader.ReadString & "<br/>"
bName = False
End If
End Select
End While
End Sub
End Class
xml文件:
<book_club>
<book>
<isbn>0-13-129014-2</isbn>
<title>JAVA How to Program (6th Ed)</title>
<author>PJ & HM Deitel</author>
<price>£39.99</price>
</book>
<book>
<isbn>0-67-232238-2</isbn>
<title>Teach Yourself UML</title>
<author>J Schmuller</author>
<price>£9.99</price>
</book>
<book>
<isbn>0-27-365575-2</isbn>
<title>Practical Business Systems Development using SSADM</title>
<author>P Weaver, N Lambrou & M Walkley</author>
<price>£34.99</price>
</book>
<book>
<isbn>0-67-232422-9</isbn>
<title>XML Primer Plus</title>
<author>N Chase</author>
<price>£32.99</price>
</book>
<book>
<isbn>0-78-972476-6</isbn>
<title>XML and Java from Scratch</title>
<author>N Chase</author>
<price>£19.99</price>
</book>
<book>
<isbn>1234567890</isbn>
<title>ASP.NET for Dummies</title>
<author>RUA Dummy</author>
<price>free!!</price>
</book>
</book_club>
答案 0 :(得分:2)
我对VB知之甚少,因为我使用的是C#。我使用LinQ,因为它提供了一种使用XDocument类读取XML的新方法。这是我从字符串中读到的内容:
返回IEnumerable()的方法
XDocument doc = XDocument.Parse(myString);
var query= from x in doc.Descendants("Book")
select new Location
{
ISBN= Double.Parse(
x.Descendants("isbn").First().Value),
Author= Double.Parse(
x.Descendants("author").First().Value) ......
};
return query;
为图书
创建一个类公共课书 { 公共图书(){}
public string Author {
get; set;
}
.....
}