读取RSS文件,其实就是读取XML文件。把各个节结内容,获取下来就万事OK了。
如下所示:

 这是获取RSS的一个方法:(本代码可下载)
public void GetRss()
    {
        //申明一个客户端对象
        WebClient webclient 
= new WebClient();
        webclient.Encoding 
= Encoding.UTF8;
        XmlDocument xmlDoc;
        //   Rss文件地址
        
string m_strRssUrl = "http://www.gkcity.com/rss/news.aspx?c=TradeView";
        using (Stream rssStream = webclient.OpenRead(m_strRssUrl))
        {
            TextReader txtReader 
= new StreamReader(rssStream);
            XmlTextReader xmlTxtReader 
= new XmlTextReader(txtReader);
            xmlDoc 
= new XmlDocument();
            xmlDoc.Load(xmlTxtReader);
        }

        XmlNodeList Hnode 
= xmlDoc.SelectNodes("rss/channel/item");
        StringBuilder sb 
= new StringBuilder();
        // RssItem是一个类。代码如下
       

        List
<RssItem> rssitems = new List<RssItem>();
        
        
foreach (XmlNode no in Hnode)
        {
            rssitems.Add(
new RssItem(no));
            
//sb.Append(no.InnerText);
        }

        
foreach (RssItem var in rssitems)
        {
           News news 
= new News();
            news.Title 
= var.Title;
            news.Link 
= var.Link;
            news.RssUrl 
= m_strRssUrl;
            news.PubDate 
=Convert.ToDateTime(var.PubDate);
            news.Description 
= var.Description;
            //注意如图你要想把读取的RSS文件保存到数据库中可以重写下面的SaveNews()方法。
            //SaveNews();
            
this.Label1.Text=sb.Append("<div><a href='"+var.Link+"' target=_blank>"+var.Title+"</a></div>").ToString();
        }
       
    }

就这样一个简单的读取过程完成了。

posted on 2007-07-02 16:25  micenter  阅读(1269)  评论(2编辑  收藏  举报