从RSS提要元素中删除Html标记

时间:2013-01-14 22:56:14

标签: c# rss xmlreader

我正在阅读有时元素包含html标签时损坏的新闻Feed。 它抛出了这个例外:

  

[意外的节点类型元素。 ReadElementString方法只能是   调用含有简单或空白内容的元素。]

XML示例

<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
  <channel>
    <title>test xml feed</title>
    <atom:link href="http://www.newssite.com" rel="self" type="application/rss+xml"/>
    <description>test</description>
    <item>
      <title>
        Title followed by html tags
        <br/>
      </title>
      <link>
        http://www.newssite.com
      </link>
      <description>
        Description Data
      </description>
      <pubDate>Mon, 14 Jan 2013 21:20:00 +0400</pubDate>
      <category>Cat1</category>
    </item>
  </channel>
</rss>  

代码示例

static void Main(string[] args)
        {
            XmlReader reader = new XmlTextReader(@"d:\test.xml");
            SyndicationFeed feed = SyndicationFeed.Load(reader);
        }
    }    

我尝试了这个Answer来解决另一个xml日期格式问题,它运行得很好。 当我使用它来解决html标签时它不起作用并仍然抛出异常。

1 个答案:

答案 0 :(得分:0)

使用Html Agility Pack解析Feed

在codeplex上:http://htmlagilitypack.codeplex.com/