1

我想在我的项目中创建 RSS 提要阅读器,该阅读器在 15 秒内工作并从 RSS url 获取新项目,我该如何从基础到最终做到这一点?

4

2 回答 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 回答