我想在我的项目中创建 RSS 提要阅读器,该阅读器在 15 秒内工作并从 RSS url 获取新项目,我该如何从基础到最终做到这一点?
问问题
406 次
2 回答
2
XmlTextReader reader = new XmlTextReader ("http://www.mono-project.com/news/index.rss2");
reader.Read ();
Console.WriteLine (reader.NodeType); // It prints "XmlDeclaration"
reader.MoveToContent ();
Console.WriteLine (reader.NodeType); // It prints "Element"
Console.WriteLine (reader.Name); // "rss"
Console.WriteLine (reader.GetAttribute ("version")); // Maybe "0.92"
// proceed content until we reach "item" element
while (!reader.EOF && reader.Name != "item")
reader.Read ();
reader.Read (); // Move from "item" to "title"
while (reader.NodeType == XmlNodeType.Whitespace)
reader.Read ();
Console.WriteLine ("Title : " + reader.ReadString ());
reader.Read (); // from "</title>" to whitespace
reader.Read (); // from whitespace to <link>
Console.WriteLine ("Link : " + reader.ReadString ());
reader.Read (); // from "</link>" to whitespace
reader.Read (); // from whitespace to <pubDate>
Console.WriteLine ("Date : " + reader.ReadString ());
reader.Read (); // from "</pubDate>" to whitespace
reader.Read (); // from whitespace to <description>
Console.WriteLine ("Description : " + reader.ReadString ());
于 2012-10-20T09:48:50.357 回答
0
using (var client = new System.Net.WebClient())
{
var all = client.DownloadString(new Uri("http://www.yoursite.com/rss"));
var doc = XElement.Parse(all);
var items = (from el in doc.Descendants("item")
select new Models.RssItem
{
Title = el.Element("title").Value,
Description = el.Element("description").Value,
Url = el.Element("link").Value,
}).ToList();
var d = new AlertDialog.Builder(this);
d.SetMessage(items.Count.ToString());
d.Show();
}
于 2012-10-22T06:25:18.913 回答