我想从我指定的xml供稿链接中获取每个项目。这里是XML格式,解析VB中列出的XML项目
<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
<channel>
<title>Site title</title>
<link>http://www.blahblah.com</link>
<language>ru</language>
<description>This site rocks</description>
<generator>DataLife Engine</generator>
<item>
<title>Item no 1 title</title>
<guid isPermaLink="true">http://www.blahblah.com/item1</guid>
<link>http://www.blahblah.com/item1</link>
<description>Description of item 1</description>
<category>Category 0</category>
<dc:creator>admin</dc:creator>
<pubDate>Fri, 19 Sep 2014 08:00:00 +0000</pubDate>
</item>
<item>
<title>Item no 2 title</title>
<guid isPermaLink="true">http://www.blahblah.com/item2</guid>
<link>http://www.blahblah.com/item2</link>
<description>Description of item 2</description>
<category>Category 0</category>
<dc:creator>admin</dc:creator>
<pubDate>Fri, 19 Sep 2014 07:00:00 +0000</pubDate>
</item>
</channel>
</rss>
以下是饲料中的示例项目。对于每个<item></item>
,它都有自己的标题,说明和链接。
我希望将标题保留在文本框1中,链接到文本框2中,并在文本框3中仅对第一项进行描述。
大多数情况下,我希望将它们保存为字符串,以便我可以继续使用这些字符串的代码。
任何人都可以帮助我吗?
我已经试过这样的事情:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
File.Delete(paths)
If Not File.Exists(paths) Then
File.Create(paths).Dispose()
End If
Dim Lines() As String
Dim stringSeparators() As String = {vbCrLf}
Dim Source As String
Dim wc As New WebClient
Source = wc.DownloadString("http://blahblah.com/rss.xml")
File.WriteAllText(paths, Source)
xDoc.Load(paths)
Dim manager As XmlNamespaceManager = New XmlNamespaceManager(xDoc.NameTable)
manager.AddNamespace("atom", "http://www.w3.org/2005/Atom")
Dim xnList As XmlNodeList = xDoc.SelectNodes("atom:feed/atom:entry", manager)
For Each xn As XmlNode In xnList
TextBox1.Text = xn.LocalName.ToString() + vbCrLf
Next
End Sub
这样一来,我已成功地下载整个文件,并将其保存为字符串。但是我不能完成最后一部分。我不明白xml文件是如何工作的,所以我认为这里的错误在原子部分附近。
我想什么是读取XML文件,然后保存每个item
,TITLE
,LINK
和DESCRIPTION
在文本文件中。
like,TITLE:LINK:DESCRIPTION
每行一个项目。我上面的示例RSS可以制作2行。
只是为了验证,我想元素,标题,描述和链接在字符串中。否则无关紧要。 – kks21199 2014-09-19 08:19:25
和家伙,我有一个解决方案。如果你允许我,我会发布它。 – kks21199 2014-09-19 15:46:44