如何从java代码更改服务器端excel工作表生成路径
我已经在servlet和java的帮助下编写了一个下载Excel工作表的代码。我的代码运行良好,并且我在客户端也得到了一个下载弹出窗口。但是,在Apache Tomcat目录中创建了一个同名的Excel文件。这也没问题(因为如果用户将来想要下载该文件,这对用户很有帮助) 但我不想将该文件存储到tomcat目录,因为我们无法授予用户对该文件夹/目录的访问权限。因此,我想知道如何将特定文件存储在服务器的特定文件夹位置,以及 允许用户在第一时间下载功能。 我正在使用3.9版本的org.apache.poi jar 注意:此服务器端文件存储行为仅适用于XLS文件格式,不适用于XLSX文件格式,而且我在FileOutputStream中仅使用文件名而不是完整路径。 我用于XLS文件格式的代码:如何从java代码更改服务器端excel工作表生成路径,java,apache,apache-poi,Java,Apache,Apache Poi,我已经在servlet和java的帮助下编写了一个下载Excel工作表的代码。我的代码运行良好,并且我在客户端也得到了一个下载弹出窗口。但是,在Apache Tomcat目录中创建了一个同名的Excel文件。这也没问题(因为如果用户将来想要下载该文件,这对用户很有帮助) 但我不想将该文件存储到tomcat目录,因为我们无法授予用户对该文件夹/目录的访问权限。因此,我想知道如何将特定文件存储在服务器的特定文件夹位置,以及 允许用户在第一时间下载功能。 我正在使用3.9版本的org.apache.p
HSSFSheet sheet = ExcelUtil.createWorkBook(anyexcelBean);
response.setHeader("Content-Disposition", "inline; filename=" + excelBean.getFileName());
response.setContentType("application/vnd.ms-excel");
OutputStream outputStream = response.getOutputStream();
sheet.getWorkbook().write(outputStream);
outputStream.flush();
outputStream.close();
XLXS格式的代码:
protected void buildDownload(HttpServletResponse response, Workbook wb, String fileName) {
try {
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-disposition", "attachment; filename=" + fileName + ".xlsx");wb.write(response.getOutputStream());
response.getOutputStream().close();
response.flushBuffer();
} catch (IOException e) {
logger.error("[WB_FILE_MGR] IOException while exporting file", e);
}
}
提前谢谢你的帮助