Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Try thread = New Thread(AddressOf loadrss) thread.Start() Catch ex As Exception MsgBox(ex.ToString) End Try End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load AxWebBrowser1.Width = Me.Width StatusBar1.Text = "就绪" End Sub Private Sub loadxmltocache(ByVal URL As String) ''''读取RSS文件并存放在本地以供操作 Dim xmldocument As New XmlDocument xmldocument.Load(URL) xmldocument.Save(Application.StartupPath & "~doc.xml")
End Sub Private Sub loadtitle() ''''从本地文件中进行操作,读取RSS中有关网站的信息 Dim xmlDocument As New XmlDocument xmlDocument.Load(Application.StartupPath & "~doc.xml") Dim mynodelist As XmlNodeList mynodelist = xmlDocument.SelectNodes("/rss/channel") Label1.Text = "网站:" & Trim(mynodelist(0).Item("title").InnerText()) Label2.Text = "描述:" & Trim(mynodelist(0).Item("description").InnerText()) End Sub Private Sub loaditem() ''''从本地文件中进行操作,读取RSS中内容的标题及作者 Dim xmlDocument As New XmlDocument xmlDocument.Load(Application.StartupPath & "~doc.xml") Dim mynodelist As XmlNodeList mynodelist = xmlDocument.SelectNodes("/rss/channel/item") ListBox1.Items.Clear() Dim i As Integer For i = 0 To mynodelist.Count - 1 ListBox1.Items.Add("[" & Trim(mynodelist(i).Item("dc:creator").InnerText()) & "]" & Trim(mynodelist(i).Item("title").InnerText())) Next End Sub
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged thread = New Thread(AddressOf loadhtml) thread.Start() End Sub Private Sub loadhtml() ''''读取RSS中对应文件的内容并存到临时文件后显示 Dim xmlDocument As New XmlDocument xmlDocument.Load(Application.StartupPath & "~doc.xml") Dim mynodelist As XmlNodeList mynodelist = xmlDocument.SelectNodes("/rss/channel/item") Dim i As Integer Dim j As Boolean Dim content As String StatusBar1.Text = "正在读取文章内容" For i = 0 To mynodelist.Count - 1 If ListBox1.SelectedItem = "[" & Trim(mynodelist(i).Item("dc:creator").InnerText()) & "]" & Trim(mynodelist(i).Item("title").InnerText()) Then content = content & "<html><head><meta http-equiv=''''content-type'''' content=''''text/html;charset=UTF-8''''></head><body>" content = content & "<table width=''''100%'''' height=''''80'''' bgcolor=''''#eeeeee''''><tr><td><b>标题:</b><a href=''''" content = content & Trim(mynodelist(i).Item("link").InnerText()) content = content & "'''' target=''''_blank''''>" content = content & Trim(mynodelist(i).Item("title").InnerText()) content = content & "</a><br><b>作者:</b>" content = content & Trim(mynodelist(i).Item("dc:creator").InnerText()) content = content & "</tb></tr></table>" content = content & formatHtml(mynodelist(i).Item("description").InnerText()) content = content & "</body></html>" j = SaveTextFile(Application.StartupPath & "~temp.html", content) AxWebBrowser1.Navigate(Application.StartupPath & "~temp.html") Exit For End If Next StatusBar1.Text = "完成" End Sub ''''写文件的过程 Function SaveTextFile(ByVal FilePath As String, ByVal FileContent As String) As Boolean Dim sw As System.IO.StreamWriter Try sw = New System.IO.StreamWriter(FilePath, False) sw.Write(FileContent) Return True Catch e As Exception Return False Finally If Not sw Is Nothing Then sw.Close() End Try End Function ''''从地址里取网址的函数 Private Function formatURL(ByVal str As String) As String Dim sStr As