我手头有一个问题。我必须为我们的内部时间管理系统创建一个导出功能。这里有一个导出按钮,如果我们点击它,所有的数据都会导出到excel表格。
用例是,如果要导出的数据包含多年的数据,则需要为每年创建一个单独的工作簿。
我已经能够创建多个工作簿,但我发现很难将那些在内存中创建的工作簿发送回HttpResponse对象。
我也尝试过使用ZipOutputStream解决方案,但结果是我们只能在ZipEntry对象中添加物理文件。
任何形式的帮助都是感激的。
我也尝试过使用ZipOutputStream解决方案,但事实证明我们只能在ZipEntry对象中添加物理文件。
不正确:
ZipOutputStream zos = new ZipOutputStream(...);
byte[] workBook; //Assign from your POI output
zos.putNextEntry(new ZipEntry("export-for-2016.xls"));
zos.write(workBook);
zos.closeEntry();
(UPDATE为清晰起见)最后三个方法调用可以在需要向zip文件添加对象时多次使用。
Apache common -compress通常更好,但这应该是您开始的基础。