随笔 - 41,  文章 - 4,  评论 - 342,  阅读 - 10万
    读取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   micenter  阅读(1269)  评论(2编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示