我正在尝试解析格式类似于Xml(但不是XML格式)的文档,它适用于所有内容,除非我达到像& ldquo这样的HTML代码。然后我收到一个错误,一切都崩溃了。我该如何解决这个问题
编辑继承错误及其发生的行: 03-25 17:56:26.540:W / System.err(21265):org.apache.harmony.xml.ExpatParser $ ParseException:在第68行,第354列:未定义的实体
<F_S_INGREDIENTS>Pale ale malt (well-modified and suitable for single-temperature infusion mashing); American hops; American yeast that can give a clean or slightly fruity profile. Generally all-malt, but mashed at lower temperatures for high attenuation. Water character varies from soft to moderately sulfate. Versions with a noticeable Rye character (“RyePA”) should be entered in the Specialty category.</F_S_INGREDIENTS>
我把它缩小为“RyePA”
答案 0 :(得分:1)
&ldquo
是一个有效的HTML实体,但不是有效的XML实体。你无法用库存XML解析器解析它。
defineEntityReplacement()方法看起来很有希望。如果你不能让它为你工作,你可以简单地将字符串读入内存(如果它不是太多bug),在你把它交给解析器之前,自己替换文本,
String s = xml.replaceAll("&ldpos;", "\"").replaceAll("&rdpos;", "\"");