0

我想创建一个 XML 文件,该文件将作为下载链接提供给用户(用于 XSLT 的 Wicket 和 TransformerFactory)。目前,我使用 File 类。但是,我不想在服务器上创建文件。该文件应该只存在于内存中。有人可以告诉我如何做到这一点吗?谢谢!

我当前的代码:

Reader reader = new StringReader("DATA");
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer(new StreamSource("EXCEL.xsl"));
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4");
File file= new File("FILE.xml");                
transformer.transform(new StreamSource(reader), new StreamResult(new FileOutputStream(file)));

其他类:

File file = new File("file");
add(new DownloadLink("download", file, "XML.xml"));
4

1 回答 1

2

你可以从这个开始(不确定这是否完全正确 - 现在无法检查)

ByteArrayOutputStream oStream = new ByteArrayOutputStream();
transformer.transform(new StreamSource(reader), new StreamResult(oStream))
byte[] xmlResult = oStream.toByteArray();
于 2013-04-12T12:37:45.340 回答