这两天闲着没事,在网上瞎逛,看到RSS订阅的按钮,以前看到就看到了,也没多想,这次看到脑子里闪过一个念头,好像我RSS方面的知识一片空白,因为没有实际需求,所以从来没有去了解过RSS订阅是怎么实现的,既然现在空着那么就做个Demo版的Rss聚合工具,说干就干,先在百度百科找了一篇Rss的介绍,内容如下

Rss(也叫聚合内容,Really Simple Syndication)是一种描述和同步网站内容的格式,是目前使用最广泛的XML应用。可以被称为资源共享模式的延伸。
RSS是一种起源于网景的技术,将用户订阅的内容传送给他们的通讯协同格式(Protocol)。RSS可以是以下三个解释的其中一个:
Really Simple Syndication
RDF (Resource Description Framework) Site Summary
Rich Site Summary
但其实这三个解释都是指同一种Syndication的技术。 RSS目前广泛用于网上新闻频道,blogwiki,主要的版本有0.91, 1.0, 2.0。
RSS:(recombination signal sequence)重组信号序列
RSS由一个共同的回文七核苷酸序列(CACAGTG)和一个共同的富含A的九核苷酸序列(ACAAAAAACC)组成,中间为固定长度的间隔序列。

 看了上面的介绍感觉Rss是个挺复杂的东西,当我把Rss订阅链接里的XML下载下来后一看,咣当倒地Rss聚合器的实现~~什么东西吗,不就是把一些标题等信息按照标准的格式组织成XML文件提供下载,订阅器负责下载和解读这些信息,揭开这层面纱后,它变得毫无神秘可言,既然没有难度的东西直接贴代码吧
(PS:我很少用到XML,所以下面的代码在处理XML文件的方法上是可能有点傻Rss聚合器的实现

Rss聚合器的实现    public struct Channel
    }
Rss聚合器的实现        Channel _Channel = new Channel();
Rss聚合器的实现
Rss聚合器的实现        List
<Item> _Items = new List<Item>();
Rss聚合器的实现            System.Net.WebRequest myRequest = System.Net.WebRequest.Create(Path);
Rss聚合器的实现            System.Net.WebResponse myResponse 
= myRequest.GetResponse();
Rss聚合器的实现            System.IO.Stream rssStream 
= myResponse.GetResponseStream();
Rss聚合器的实现            System.Xml.XmlDocument rssDoc 
= new System.Xml.XmlDocument();
Rss聚合器的实现            rssDoc.Load(rssStream);
Rss聚合器的实现
Rss聚合器的实现            _Channel.title 
= rssDoc.SelectSingleNode("rss/channel/title").InnerXml;
Rss聚合器的实现            _Channel.link 
= rssDoc.SelectSingleNode("rss/channel/link").InnerXml;
Rss聚合器的实现            _Channel.description 
= rssDoc.SelectSingleNode("rss/channel/description").InnerXml;
Rss聚合器的实现            _Channel.lastBuildDate 
= rssDoc.SelectSingleNode("rss/channel/pubDate").InnerXml;
Rss聚合器的实现
Rss聚合器的实现            System.Xml.XmlNodeList rssItems 
= rssDoc.SelectNodes("rss/channel/item");
Rss聚合器的实现            
for (int i = 0; i < rssItems.Count; i++)
            }

相关文章:

  • 2021-08-15
  • 2021-11-29
  • 2021-10-13
  • 2021-11-20
  • 2021-08-06
  • 2022-02-13
猜你喜欢
  • 2022-02-22
  • 2022-12-23
  • 2022-12-23
  • 2022-01-13
  • 2021-06-12
  • 2021-11-25
  • 2021-07-14
相关资源
相似解决方案