Java输出XML文件和CDATA
我对javax有问题。xml。使改变Transformer类及其setOutputProperty方法。我正在尝试获取XML输出
<name>
<text>XXXXXXXXXX</text>
</name>
<questiontext format="html">
<text><![CDATA[YYYYYYYYYYY]]></text>
</questiontext>
但使用
Transformer trans = transfac.newTransformer();
trans.setOutputProperty(OutputKeys.CDATA_SECTION_ELEMENTS, "text");
两个文本节点被CDATA标记嵌入的原因如下:
<name>
<text><![CDATA[XXXXXXXXXX]]></text>
</name>
<questiontext format="html">
<text><![CDATA[YYYYYYYYYYY]]></text>
</questiontext>
所以我想我需要一种方法来指定文本元素的父元素,但是我还没有找到这样做的方法,javadocs没有指定使用哪个符号。此外,我无法更改输出XML格式
# 1 楼答案
不能-^output属性对应于
<xsl:output>
的XSLTcdata-section-elements
属性,这只允许您根据QName定义元素,而不是匹配表达式但这并不重要,因为就XML解析器而言
<foo>text</foo>
和<foo><![CDATA[text]]></foo>
是相同的