/**
* 导出
*/
public void exportUserInfo(HttpServletResponse response, String[] localPathList) {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
ZipOutputStream zip = new ZipOutputStream(outputStream);
int i = 0
for (String localPath : localPathList) {
i++;
try {
// 添加到zip
File file = new File(localPath);
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file));
zip.putNextEntry(new ZipEntry("导出第-"+i+"张.xlsx"));
zip.write(FileUtils.readFileToByteArray(file));
IOUtils.closeQuietly(bis);
zip.flush();
zip.closeEntry();
} catch (IOException e) {
e.printStackTrace();
}
IOUtils.closeQuietly(zip);
byte[] data = outputStream.toByteArray();
try {
genCode(response, data);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
/**
* 生成zip文件
*/
private void genCode(HttpServletResponse response, byte[] data) throws IOException
{
OutputStream os = response.getOutputStream();
response.reset();
response.setCharacterEncoding("UTF-8");
response.addHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Expose-Headers", "*");
response.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode("导出表.zip", "UTF-8"));
response.addHeader("Content-Length", "" + data.length);
response.setContentType("application/octet-stream; charset=UTF-8");
IOUtils.write(data, os);
os.flush();
os.close();
}
ZIP导出
最新推荐文章于 2023-02-11 16:51:39 发布