Java implements xlsx file download and file upload
File download: (xlsx download case)
Upload the code directly (note: the file header encoding of the header must be set properly, otherwise garbled characters may appear)
public void downloadTemplate(HttpServletRequest request, HttpServletResponse response) {
response.setContentType("application/x-msdownload");
String dateName = "下载文件.xlsx";
response.setHeader("Content-Disposition", "attachment;filename=" + new String(dateName.getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1));
OutputStream out = null;
try {
out = response.getOutputStream();
XSSFSheet sheet1 = workbook.createSheet("sheetName");
XSSFRow titleRow1 = sheet1.createRow(0);
titleRow1.createCell(0).setCellValue("行1列1");
titleRow1.createCell(1).setCellValue("行1列2");
titleRow1.createCell(2).setCellValue("行1列3");
XSSFRow titleRow2 = sheet1.createRow(1);
titleRow2.createCell(0).setCellValue("行2列1");
titleRow2.createCell(1).setCellValue("行2列2");
titleRow2.createCell(2).setCellValue("行2列3");
try {
workbook.write(out);
} catch (Exception e) {
e.printStackTrace();
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if(out != null){
out.flush();
out.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
File Upload
For subsequent xlsx processing, you can go to the homepage to view another article I wrote about reading and parsing xlsx.
@PostMapping("/upload")
public void Upload(HttpServletRequest request, @RequestPart("file") MultipartFile files) {
String fileName = files.getOriginalFilename();
long size = files.getSize();
String prefix = null;
if (fileName != null) {
prefix = fileName.substring(fileName.lastIndexOf(".") + 1);
}
}