我有html数据,我正在转换成Dom4J文档。
我遇到了一个错误:
org.dom4j.DocumentException: Error on line 1 of document : Reference is not allowed in prolog. Nested exception: Reference is not allowed in prolog.
at org.dom4j.io.SAXReader.read(SAXReader.java:482)
at org.dom4j.DocumentHelper.parseText(DocumentHelper.java:278)
at MonTest.main(MonTest.java:21)
Nested exception:
org.xml.sax.SAXParseException: Reference is not allowed in prolog.
这是一个角色“&”我需要逃进&放大器;为了建立文件。
在XML中,似乎我们需要转义5个字符:(gt,lt,quot,amp,apos)
尽管如此,我怎样才能逃脱它,而不是将其转移到“节点”元素中:
<div id="test" class='toto'>A&A<A"A</div>
应该给:
<div id="test" class='toto'>A&A<A"A</div>
而不是
<div id="test" class='toto'>A&A<A"A</div>
谢谢,
答案 0 :(得分:7)
在添加到XML文档之前转义字符串。使用Apache Commons Lang中的StringEscapeUtils.escapeXml方法。使用一些库来构建XML,例如http://code.google.com/p/joox/
答案 1 :(得分:2)