我是这样初始化文档对象的:
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.newDocument();
之后,我通过向 doc 对象插入数据来构建 XML 文件。
最后,我将内容写入计算机上的文件。
我的问题是如何将doc中的内容写入byte[]
?*
这是我将内容写入 XML 文件的方式:
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("changeOut.xml"));
// Output to console for testing
// StreamResult result = new StreamResult(System.out);
transformer.transform(source, result);
最佳答案
将 OutputStream 而不是 File 传递给 StreamResult
构造函数。
ByteArrayOutputStream bos=new ByteArrayOutputStream();
StreamResult result=new StreamResult(bos);
transformer.transform(source, result);
byte []array=bos.toByteArray();
关于java - 将 Document 对象转换为 Byte[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11982753/