生成Rss聚合页xml内容信息
生活随笔
收集整理的這篇文章主要介紹了
生成Rss聚合页xml内容信息
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
Rss是站點與站點之間共享內容的一種簡易方式,也稱為聚合內容,通常被用于新聞網站,網站提供rss輸出,有利于用戶發(fā)現網站的更新,網站用戶可以再客戶端借助于類似于資訊閱讀器等支持rss的新聞聚合軟件。
Rss是基于xml的一種形式,并且所有rss都要遵循W3C站點發(fā)布的XML 1.0規(guī)范,可以參見以下Rss2.0規(guī)范。
Rss 2.0規(guī)范
后臺代碼編寫:
?
后臺代碼 1 string xmlpath = @"rss.xml"; 2 protected void Page_Load(object sender, EventArgs e) 3 { 4 if (!IsPostBack) 5 { 6 string strPath = Server.MapPath(".") + xmlpath; 7 8 XmlTextWriter writer = new XmlTextWriter(strPath, Encoding.UTF8); 9 writer.Formatting = Formatting.Indented; 10 writer.WriteStartDocument(); 11 writer.WriteComment("讀入RSS"); 12 writer.WriteStartElement("rss"); 13 writer.WriteAttributeString("version", "2.0"); 14 writer.WriteStartElement("channel"); 15 writer.WriteStartElement("title"); 16 writer.WriteCData("新聞要聞-新浪新聞"); 17 writer.WriteEndElement(); 18 writer.WriteStartElement("image"); 19 writer.WriteStartElement("title"); 20 writer.WriteCData("新聞中心"); 21 writer.WriteEndElement(); 22 writer.WriteElementString("link", "http://news.sina.com.cn"); 23 writer.WriteElementString("url", "http://www.sinaimg.cn/home/deco/2009/0330/logo_home_news.gif"); 24 writer.WriteEndElement(); 25 writer.WriteStartElement("description"); 26 writer.WriteCData("新聞中心-新聞要聞"); 27 writer.WriteEndElement(); 28 writer.WriteElementString("link", "http://roll.news.sina.com.cn/s/"); 29 writer.WriteStartElement("language"); 30 writer.WriteString("zh-cn"); 31 writer.WriteEndElement(); 32 writer.WriteStartElement("Copyright"); 33 writer.WriteCData("Copyright 1996 - 2012 SINA Inc. All Rights Reserved"); 34 writer.WriteEndElement(); 35 DataTable dt = ReadData(); 36 for (int i = 0; i < dt.Rows.Count; i++) 37 { 38 string link = dt.Rows[i]["link"].ToString(); 39 string title = dt.Rows[i]["title"].ToString(); 40 string summary = dt.Rows[i]["summary"].ToString(); 41 string author = dt.Rows[i]["author"].ToString(); 42 string content = dt.Rows[i]["content"].ToString(); 43 string published = dt.Rows[i]["published"].ToString(); 44 writer.WriteStartElement("item"); 45 writer.WriteStartElement("title"); 46 writer.WriteString(title); 47 writer.WriteEndElement(); 48 writer.WriteElementString("link", link); 49 writer.WriteElementString("author", author); 50 writer.WriteElementString("summary", summary); 51 writer.WriteStartElement("description"); 52 writer.WriteString(content); 53 writer.WriteEndElement(); 54 writer.WriteElementString("published", published); 55 writer.WriteEndElement(); 56 } 57 writer.WriteEndElement(); 58 writer.WriteEndElement(); 59 writer.WriteEndDocument(); 60 writer.Flush(); 61 writer.Close(); 62 63 XmlDocument document = new XmlDocument(); 64 document.Load(strPath); 65 Response.ContentType = "text/xml"; 66 document.Save(Response.Output); 67 } 68 } 69 public DataTable ReadData() 70 { 71 string connectionString = ConfigurationManager.ConnectionStrings["Conn"].ConnectionString; 72 using (SqlConnection con = new SqlConnection(connectionString)) 73 { 74 SqlCommand cmd = con.CreateCommand(); 75 cmd.CommandText = "SELECT top 10 * FROM RSS WHERE summary='財經要聞匯總' order by [published] desc"; 76 SqlDataAdapter da = new SqlDataAdapter(cmd); 77 DataSet ds = new DataSet(); 78 da.Fill(ds); 79 if (ds == null || ds.Tables.Count <= 0 || ds.Tables[0].Rows.Count <= 0) 80 { 81 return new DataTable(); 82 } 83 return ds.Tables[0]; 84 } 85 }?
由于IE7已經支持Rss信息的自動解析,我們能夠看到下面的網頁效果,否者看到只是xml代碼文件。
樣式截圖:
?Rss內容讀取
總結
以上是生活随笔為你收集整理的生成Rss聚合页xml内容信息的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数字人民币概念股有哪些 这几只走势强劲
- 下一篇: Microsoft Dynamics C