Errorr使用DOM解析器解析xml时,在文档的元素内容中找到无效的XML字符(Unicode:0xb)

时间:2014-02-27 15:24:46

标签: java xml xml-parsing domparser

ErrorrAn invalid XML character (Unicode: 0xb) was found in the element content of the document.

当我尝试使用dom解析器解析xml数据时出现此错误?

是什么原因?

我该如何解决这个问题?

修改 这是XML文件片段

<CIRS><CIR applicantId="131906564" loanId="126907905" applicantRefId="TSFI012095G1" fan="TSFI012095"><REQUESTDATA><NAME>D DUNSTON JOSEPH WILFRED</NAME><DOB>31-07-1966</DOB><GENDER>Male</GENDER><ID><TYPE>PASSPORT NUMBER</TYPE><VALUE>H3359853</VALUE></ID><ID><TYPE>DRIVER'S LICENSE NUMBER</TYPE><VALUE>R/TN/69/005545/2005</VALUE></ID><PHONE>95412563#25,23778#34,87976#54</PHONE>

我猜问题出现在电话号码标记<PHONE>95412563#25,23778#34,87976#54</PHONE>

1 个答案:

答案 0 :(得分:3)

每当将无效的xml字符输入xml时,都会出现这样的错误。当你在Notepad ++中打开它时,它看起来像VT,SOH,FF。这些是无效的xml字符。我正在使用xml版本1.0,我在使用以下模式在数据库中输入之前验证文本数据:

Pattern p = Pattern.compile("[^\\u0009\\u000A\\u000D\u0020-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFF]+");
retunContent = p.matcher(retunContent).replaceAll("");

它将确保在xml中不会输入无效的特殊字符。