在一个java类我刚刚创建了这样的工作簿
XSSFWorkbook workbook = (XSSFWorkbook) WorkbookFactory.create(fis);
和填充的细胞及其相应的细胞类型。
现在我需要将其写为xxx.xlsx文件,同时返回BuyteArrayOutputStream。
这样做,
FileOutputStream fos = new FileOutputStream(tempFile);
workbook.write(fos);
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
workbook.write(outputStream);
return outputStream;
这里写成xxx.xlsx fils成功但同时将outputStream返回为null? 如何实现它?
答案 0 :(得分:0)
首先我将它写入输出流并获取byte []。之后通过 Apache Commons IO的IOUtils.write()稍后写成文件。
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
workbook.write(outputStream);
byte[] b = outputStream.toByteArray();
FileOutputStream fos = new FileOutputStream(tempFile);
IOUtils.write(b, fos);
return outputStream;