- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 SyndicationFeed
从不同的 RSS 源中检索一些数据。但是,我在尝试阅读 RSS 时遇到了一个问题,据我所知,RSS 与有效的 RSS 具有相同的元素和数据。
SyndicationFeed feed = SyndicationFeed.Load(XmlReader.Create("http://rsslink"));
例如,此 RSS 工作正常并且被无误地接受:http://kjellochklortanten.libsyn.com/rss
虽然这个 RSS:http://feeds.feedburner.com/tedtalks_audio导致 SyndicationFeed
抛出错误(这是从瑞典语翻译过来的):
An error occurred when parsing a DateTime-value in XML
我查看了两个提要中的日期,据我所知它们是相同的。
任何知道可能导致此错误的线索的 C#-ninja?
提前致谢!
最佳答案
出现此问题的原因是第二个提要中使用的日期格式。 SyndicationFeed.Load 方法期望接收标准格式的提要。以下是标准格式的示例:
格林威治标准时间 2009 年 10 月 5 日星期一 08:00:06
但是,提要中的 lastBuildDate 是:
2014 年 5 月 2 日星期五 04:58:16 UTC
要解决此问题,请创建一个可识别该格式的自定义 XML 阅读器。复制 MyXmlReader 的整个代码并替换
const string CustomUtcDateTimeFormat = "ddd MMM dd HH:mm:ss Z yyyy";
通过
const string CustomUtcDateTimeFormat = "ddd, dd MMM yyyy HH:mm:ss 'UTC'";
现在用作
//var feed = SyndicationFeed.Load(XmlReader.Create("http://feeds.feedburner.com/tedtalks_audio"));
XmlReader r = new MyXmlReader("http://feeds.feedburner.com/tedtalks_audio");
var feed = SyndicationFeed.Load(r);
该代码适用于两种提要。
海吉达
关于C# SyndicationFeed - RSS 解析日期问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23418875/
合并 feed 和 feed2 的简单方法是什么?我希望将 feed2 中的项目添加到 feed。此外,我想避免重复,因为当问题同时使用 WPF 和 Silverlight 标记时,feed 可能已经
这似乎是一个愚蠢的问题,但我终究无法弄清楚如何在 C# 中访问 SyndicationFeed 类。我在 MSDN 上看到的每个示例或以其他方式假定它已经导入,而我发现的没有一个示例给出了它所在位置的
如何生成包含下图中显示的命名空间的 Atom Feed? Atom 提要的所有节点都必须以“a:”开头。 这是我现在正在做的,但是它不起作用。 SyndicationFeed feed = n
我有一个这样的类(class): public static class MyFeedExtensions { private readonly static XNamespace _name
我正在使用 SyndicationFeed类来生成 Atom 提要和 Atom10FeedFormatter 来序列化它。当文件写入磁盘时,我希望能够在元素之间添加换行符。我知道 feed 读者不在乎
我正在尝试阅读一些 Rss/Atom 提要 var synFeed = SyndicationFeed.Load(reader); 但它会引发最轻微的问题。例如,当一个项目在描述字段中包含几个 HTM
我正在使用 SyndicationFeed 从不同的 RSS 源中检索一些数据。但是,我在尝试阅读 RSS 时遇到了一个问题,据我所知,RSS 与有效的 RSS 具有相同的元素和数据。 Syndica
我正在向 RSS Feed 添加一些自定义 iTunes 播客标签。 feed.AttributeExtensions.Add(new XmlQualifiedName(itunesP
我正在使用 SyndicationFeed 类来使用一些 rss 提要。我想知道如何获取 RSS 提要的 content:encoded 节点。这是我正在使用的代码: XmlReader reader
在我的提要生成代码中,我有以下内容: XNamespace itunesNS = "http://www.itunes.com/dtds/podcast-1.0.dtd"; feed.ElementE
我正在使用 .NET 的 SyndicationFeed 创建 RSS 和 ATOM 提要。不幸的是,我需要 description 元素(SyndicationItem 的 Content 属性)中
我们可以通过 async/await 读取 RSS 吗? XmlReader reader = XmlReader.Create("http://localhost/feeds/serializedF
无论出于何种原因,IBM 对其 RSS 提要使用 https(无需凭据)。我正在尝试消费 https://www.ibm.com/developerworks/mydeveloperworks/blo
我正在尝试使用 Xamarin 中的 SyndicateFeed 类将 RSS 提要数据拉入 iOS 应用程序。 我正在使用 system.ServiceModel - 但我找不到这个类。 Xamar
我在 asp.net core 中遇到 SyndicationFeed 问题。我知道它还没有移植到 asp.net 核心,但我也使用完整的 .net 框架,所以我认为它应该可以工作。 这是我的代码,但
我需要为学校项目申请 Windows Phone。我按照教程做了 RSS 阅读器,但它不起作用,我不知道为什么。 我遇到以下错误(运行后): System.Windows.Data Error: Bi
我正在使用 SyndicationFeed 类为文章使用一些 rss 提要。我想知道如何只从项目的摘要字段中获取文本,而不使用 html 标签。例如,有时(并非总是)它包含 html 标签,例如:di
我有一个联合供稿。使用 Rss20FeedFormatter 进行序列化时,我得到了在 xml 中声明的 xmlns:cf 和 xmlns:cfi 命名空间。媒体元素保持内联。 我确信这就是缩略图无
我创建了一个包含许多 SyndicationItem 的简单 SyndicationFeed。每个 SyndicationItem 都有 HtmlContent。 HtmlContent 是一个表。这
在 .net 3.5 中,有一个 SyndicationFeed 将加载 RSS 提要并允许您在其上运行 LINQ。 这是我正在加载的 RSS 示例: Title of RSS feed
我是一名优秀的程序员,十分优秀!