我在http://stax.codehaus.org/上使用vrsion 1.2.0中的StAX Streaming Api .当我尝试将以下xml写入文件时,不会转义大于char的字符.然而,似乎没有逃脱的问题.
out = new FileOutputStream("foo.xml");
XMLOutputFactory factory = XMLOutputFactory.newInstance();
XMLStreamWriter writer = factory.createXMLStreamWriter(out);
writer.writeStartDocument();
writer.writeStartElement("foo");
writer.writeAttribute("test", "<foo>");
writer.writeEndElement();
writer.writeEndDocument();
writer.flush();
writer.close();
out.close();
Run Code Online (Sandbox Code Playgroud)
输出(仅相关)是这样的:
<foo test="<foo>"
Run Code Online (Sandbox Code Playgroud)
我也试过使用writeCharacters方法 - 结果相同.这是一个错误还是意图?有没有解决方法?(手动更换>
replaceAll(">", ">");
Run Code Online (Sandbox Code Playgroud)
导致'&'自行逃脱.
在此先感谢您的帮助.