【发布时间】:2014-03-17 00:16:51
【问题描述】:
我对 Visual Basic 完全陌生。我想创建一个只读取外部 XML 文件的最后一个元素的程序。我唯一的代码是:
Text = wc.DownloadString("http://example.com/file.xml")
XML文件如下:
<message>
<sender>John</sender>
<body>Hello!</body>
</message>
【问题讨论】:
我对 Visual Basic 完全陌生。我想创建一个只读取外部 XML 文件的最后一个元素的程序。我唯一的代码是:
Text = wc.DownloadString("http://example.com/file.xml")
XML文件如下:
<message>
<sender>John</sender>
<body>Hello!</body>
</message>
【问题讨论】:
到目前为止,您的 XML 似乎有一个字符串表示形式。这是一个好的开始。下一步是解析 XML。使用XDocument.Parse 是一个很好的工具。我们可以这样解析:
Text = wc.DownloadString("http://example.com/file.xml")
Dim xdoc As XDocument = XDocument.Parse(Text)
我假设当你说最后一个元素时,你的意思是根元素内的最后一个节点(在这个例子中是message)。你可以这样做:
Dim lastElement As XElement = xdoc.Root.Elements.Last()
如果这是您的目标,您可以从那里访问节点的文本。您可能想要添加额外的验证,例如确保 Elements 集合不为空。现在,这会引发异常,即根目录中没有元素。
其他注意事项:如果项目中没有 add a reference 到 System.Xml 和 System.Xml.Linq,则需要它们,并确保已导入 System.Xml.Linq 命名空间。
XDocument 类是一种相当健壮的方式来导航 XML 文件的内容。使用MSDN documentation 来探索它还能做什么。
【讨论】: