如何从Sax XmlHandler输出CDATA节
时间:2020-03-06 14:58:03 来源:igfitidea点击:
这是如何将字符从Oracle编码到Xml的后续问题?
在我的环境中,我使用Java将结果集序列化为xml。我无权访问输出流本身,只能访问org.xml.sax.ContentHandler。
当我尝试在CDATA节中输出字符时:
它基本上是这样的:
xmlHandler.startElement(uri, lname, "column", attributes); String chars = "<![CDATA["+rs.getString(i)+"]]>"; xmlHandler.characters(chars.toCharArray(), 0, chars.length()); xmlHandler.endElement(uri, lname, "column");
我得到这个:
<column><![CDATA[33665]]></column>
但是我想要这个:
<column><![CDATA[33665]]></column>
那么,如何使用Sax ContentHandler输出CDATA节?
解决方案
它被转义了,因为handler.characters函数被设计为转义,并且<
