C#获取Rss资源

摘要 : C # method to read Rss

一种基于XML文件的RSS信息交互处理方法,该方法首先获取RSS信息所对应的URL,然后读取RSS信息对应的值数据,对RSS信息进行分类整理,确定RSS信息的相关度,建立RSS信息的索引数据库。终端选取信息类,服务端生成定制的RSS信息列表,安装应用程序,传输终端信息,服务端验证终端信息,读取、分析并显示RSS信息。本发明解决了背景技术中信息易相互干扰,操作复杂,不能形成交互,通用性差的技术问题。本发明通用性好,不同终端在同一设备上使用互无干扰。RSS信息列表可随机更新。服务端与终端在整个运行过程中形成互动,使所提供的RSS信息相关度始终保持最优、最佳、最精确。
/// <summary>
/// 获取Rss资源
/// </summary>
/// <param name="RssURL"></param>
/// <returns></returns>
public static DataTable ReadRss(string RssURL)
{
DataTable Dt = new DataTable();
DataColumn Title = new DataColumn("Title", typeof(string));
DataColumn Author = new DataColumn("Author", typeof(string));
DataColumn PubDate = new DataColumn("PubDate", typeof(string));
DataColumn Link = new DataColumn("Link", typeof(string));
Dt.Columns.Add(Title);
Dt.Columns.Add(Author);
Dt.Columns.Add(PubDate);
Dt.Columns.Add(Link);
System.Net.WebRequest myRequest = System.Net.WebRequest.Create(RssURL);
System.Net.WebResponse myResponse = myRequest.GetResponse();
System.IO.Stream rssStream = myResponse.GetResponseStream();
System.Xml.XmlDocument rssDoc = new System.Xml.XmlDocument();
rssDoc.Load(rssStream);
System.Xml.XmlNodeList rssItems = rssDoc.SelectNodes("rss/channel/item");
for (int i = 0; i < rssItems.Count; i++)
{
DataRow Row = Dt.NewRow();
System.Xml.XmlNode rssDetail;
//标题
rssDetail = rssItems.Item(i).SelectSingleNode("title");
if (rssDetail != null)
{
Row["Title"] = rssDetail.InnerText;
}
else
{
Row["Title"] = "";
}
//作者
rssDetail = rssItems.Item(i).SelectSingleNode("author");
if (rssDetail != null)
{
Row["Author"] = rssDetail.InnerText;
}
else
{
Row["Author"] = "";
}
//发布时间
rssDetail = rssItems.Item(i).SelectSingleNode("pubDate");
if (rssDetail != null)
{
Row["PubDate"] = Convert.ToDateTime(rssDetail.InnerText).ToString("yyyy年MM月dd日");
}
else
{
Row["PubDate"] = "";
}
//链接地址
rssDetail = rssItems.Item(i).SelectSingleNode("link");
if (rssDetail != null)
{
Row["Link"] = rssDetail.InnerText;
}
else
{
Row["Link"] = "";
}
Dt.Rows.Add(Row);
}
return Dt;
}
上一篇 :
下一篇 :IE中JS报错KB927917的解决方法