java – 将stax XML写入String
作者:互联网
我正在使用stax来创建我的Web应用程序所需的XML文档.
目前我在这样的文件中创建我的XML:
XMLOutputFactory factory = XMLOutputFactory.newInstance();
String output=null;
try
{
XMLStreamWriter writer = factory.createXMLStreamWriter(
new FileWriter("C:\\Junk\\xmlDoc.xml"));
writer.writeStartDocument();
writer.writeStartElement("TagName1");
writer.writeAttribute("AAA", "BBB");
writer.writeEndElement();
writer.writeEndDocument();
writer.flush();
writer.close();
}
catch (XMLStreamException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
但是xml文件不是我想要的,我需要在String中创建我的XML.
不幸的是我无法弄清楚我需要哪个OutputStream对象而不是FileWriter
解决方法:
你需要一个java.io.StringWriter:
与FileWriter一样,它派生自Writer,可以传递给factory.createXMLStreamWriter.完成后,您可以将书面内容转换为字符串.
StringWriter stringOut = new StringWriter();
XMLStreamWriter writer = factory.createXMLStreamWriter(stringOut);
... // write XML
String output = stringOut.toString();
标签:java,xml,java-io,stax 来源: https://codeday.me/bug/20190611/1220519.html