我想创建一个XML文件,它将作为下载链接提供给用户(Wicket和TransformerFactory for XSLT)。 目前,我使用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"));
答案 0 :(得分:1)
你可以从这开始(不确定这是否完全正确 - 现在无法检查)
ByteArrayOutputStream oStream = new ByteArrayOutputStream();
transformer.transform(new StreamSource(reader), new StreamResult(oStream))
byte[] xmlResult = oStream.toByteArray();