Asp.net下利用VB进行RSS解析

来源:互联网 发布:php自助建站源码 编辑:程序博客网 时间:2024/05/18 21:08

Protected Sub GetRSSSource(ByVal lt As Literal)
            Dim RSSURL,RSSName As String
            '根据需要可以从数据库动态获取
            RSSURL = "http://news.qq.com/newsgn/rss_newsgn.xml"
            RSSName = "国内新闻"
            Dim myRequest As System.Net.WebRequest = System.Net.WebRequest.Create(RSSURL)
            Dim myResponse As Net.WebResponse = myRequest.GetResponse

            Dim rssStream As IO.Stream = myResponse.GetResponseStream()
            Dim rssDoc As System.Xml.XmlDocument = New System.Xml.XmlDocument()
            rssDoc.Load(rssStream)
            Dim rssItems As System.Xml.XmlNodeList = rssDoc.SelectNodes("rss/channel/item")

            Dim title As String = ""
            Dim titleWZ As String = ""
            Dim link As String = ""
            Dim description As String = ""
            Dim pubDate As String = ""
            lt.Text = "<div style='border:1px solid #d9d9d9'><table border='0' cellpadding='0' cellspacing='0' width='100%'>"
            lt.Text += "<tr style=""background-image: url('App_Themes/Theme1/images/header01.jpg');"" height='25px'><td colspan='3'>"
            lt.Text += "<img src='images/BaseImages/new1.gif' />"
            lt.Text += RSSName
            lt.Text += "</td></tr>"
            For i As Integer = 0 To IIf(rssItems.Count > 5, 5, rssItems.Count - 1)
                Dim rssDetail As System.Xml.XmlNode
                rssDetail = rssItems.Item(i).SelectSingleNode("title")
                If rssDetail IsNot Nothing Then
                    title = rssDetail.InnerText
                    titleWZ = title
                Else
                    title = ""
                End If
                Try
                    title = IIf(title.Length > 17, title.Substring(0, 17) + "...", title)
                Catch ex As Exception

                End Try

                rssDetail = rssItems.Item(i).SelectSingleNode("link")
                If rssDetail IsNot Nothing Then
                    link = rssDetail.InnerText
                Else
                    link = ""
                End If
                rssDetail = rssItems.Item(i).SelectSingleNode("description")
                If rssDetail IsNot Nothing Then
                    description = rssDetail.InnerText
                Else
                    description = ""
                End If
                rssDetail = rssItems.Item(i).SelectSingleNode("pubDate")
                If pubDate IsNot Nothing Then
                    pubDate = rssDetail.InnerText
                    pubDate = CType(pubDate, DateTime).ToString("MM-dd")
                Else
                    pubDate = ""
                End If
                lt.Text += "<tr style='background-color:white;'><td height='20px'>·</td><td><a href='" + link + "' target='_blank' title='" + titleWZ + "'>"

+ title + "</a></td><td width='60px' align='center'>" + pubDate + "</td></tr>"
            Next
            lt.Text += "</table></div>"
            If RSSID <> "3" Then
                lt.Text += "<br />"
            End If
        End Sub

原创粉丝点击