带有&auml的XML文件;

我有一个大致如下所示的XML文件:

<customer>
    <name>M&uuml;ller</name>
</customer>

我使用下面的代码解析文件:

File xmlFile = new File("file.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(xmlFile)

并得到错误的实体&uuml; 被引用但未被声明。 我想要的是该条目正在被读取但没有以任何方式进行分析,我想要获取该文件中写入的值。

我怎么做?


我试过设置:

dbFactory.setExpandEntityReferences(false);

但这不起作用。

如果您无法修改您的xml内容(使用UTF-8 xml可以包含变音符号),您可以添加一个DTD:

<!DOCTYPE definition [
<!ENTITY uuml "&#xfc;">
]>

如果您不能修改您的xml文件,请加载xml内容并添加DTD:

String dtd = "<!DOCTYPE definition [n<!ENTITY uuml '&#xfc;'>n]>n",
            contents = <load xmlFile>;
Reader reader = new StringReader(dtd + contents);
InputSource src = new InputSource(reader);
Document doc = dBuilder.parse(src);
链接地址: http://www.djcxy.com/p/85689.html

上一篇: XML file with &auml;

下一篇: INTERNET permissions in Android M