有没有办法使用java中的Writer
类生成xlsx文件?
我用来生成转换为字节数组的工作簿的方法:
private byte[] generateXlsxBytes() {
XSSFWorkbook workbook = new XSSFWorkbook();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
workbook.write(baos);
baos.close();
return baos.toByteArray();
}
我尝试通过执行以下操作将字节写入writer:
Writer writer = ..get the writer..
IOUtils.write(generateXlsBytes(), writer);
但是当我尝试在excel中打开文件时,我收到一条消息,指出文件的标记对于扩展名(xlsx)不正确。
我使用自定义框架,它不允许我使用FileOutputStream
直接写入文件。如果有人能告诉我使用Writer
的方法,我将非常感激。
答案 0 :(得分:1)
@ A4L谢谢你向我解释。
编写器不是用来写原始字节的。
我刚刚请求我的一位同事在框架中进行更改,以便我可以使用OutputStream