asp.net 中的RSS的用法(二)--RSS读取

来源:互联网 发布:sql select 包含 编辑:程序博客网 时间:2024/05/21 13:28
导读:
  读取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是一个类。代码如下
  
  
  
  
  
  public class RssItem
  {
  // private string title;
  private string link;
  private string description;
  private string pubDate;
  // public string Title
  {
  get { return title; }
  set { title = value; }
  }
  // public string Link
  {
  get { return link; }
  set { link = value; }
  }
  // public string Description
  {
  get { return description; }
  set { description = value; }
  }
  // public string PubDate
  {
  get { return pubDate; }
  set { pubDate = value; }
  }
  // public RssItem(XmlNode node)
  {
  XmlNode selected;
  selected = node.SelectSingleNode("title");
  if (selected != null)
  title = selected.InnerText;
  selected = node.SelectSingleNode("link");
  if (selected != null)
  link = selected.InnerText;
  selected = node.SelectSingleNode("description");
  if (selected != null)
  description = selected.InnerText;
  selected = node.SelectSingleNode("pubDate");
  if (selected != null)
  pubDate = selected.InnerText;
  }
  }
  List rssitems = new List();
  
  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("
"+var.Title+"
").ToString();
  }
  
  }
  就这样一个简单的读取过程完成了。

本文转自
http://www.cnblogs.com/seebook/articles/803291.html