我需要处理的rss 2.0提要返回罗马日期分析器无法解析的日期条目,为所有日期传递null
。此外,不存在合适的SimuleDead格式模式(可以简单地在罗马.Fielts中指定),因此在进行解析之前,需要对输入进行预处理。Rome的DateParser已经在内部完成了这些工作,比如在将RFC822日期输入中的“ut”替换为“gmt”,然后再将其输入到Java DateFormat解析器。我只需要添加一个类似的修改。
我现在要做的是在我的项目中包含Rome的rss20parser.java及其扩展的所有提要解析器类的副本,尽可能覆盖对Rome的DateParser的所有引用,并提供我自己的DateParser类,然后提要解析器类引用该类,而不是原始的DateParser。
考虑到Rome的插件结构,我希望能够简单地插入我自己的DateParser,但是没有办法这样做。我错过什么了吗?我可以用我自己的dateparser使用rome,但是不必复制所有预期使用它的feed解析器类吗?
最佳答案
参见手册here
要在Rome中为DateParser自定义日期格式,需要使用适当的datetime.extra.masks
创建自定义rome.properties,例如:
datetime.extra.masks=EEE, dd MMM yyyy HH:mm:ss z
将自定义属性文件放在src/main/resources中。所有rome.properties文件将在加载时聚合。