导读:
读取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(" ").ToString();
}
}
就这样一个简单的读取过程完成了。
本文转自
http://www.cnblogs.com/seebook/articles/803291.html
读取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(" ").ToString();
}
}
就这样一个简单的读取过程完成了。
本文转自
http://www.cnblogs.com/seebook/articles/803291.html