我正在为类(软件I)编写代码,以处理RSS feed的XMLtree并输出到html中。我们提供了一个XMLInput文件的示例。
具体地说,我在使用this feed和其中包含CDATA的描述标签时遇到了麻烦。
我已经阅读了StackOverflow上所有带有CDATA标记的帖子,却没有找到对我有意义的/不是用文档构建器/工厂编写的。
下面是我不断出现CDATA标记错误的代码段。
if (item.child(i).label().contentEquals("description")) {
description = item.child(i).child(0).toString();
if (description.indexOf('<') != -1) {
description = description.substring(0,
description.indexOf('<'));
}
预期结果是带有pubDate,Source和Description的html表。如提供的sample output。该示例适用于我上面链接的供稿。
实际结果: 线程“主”中的异常java.lang.AssertionError:违反:k <此根的子树数 在components.xmltree.XMLTree1.child(未知来源)
错误与上面的代码段中的.toString()行相关,并且仅在上面链接的rss时触发。