不能直接通過路徑來獲取
這個是一個下載導出文件的操作
@GetMapping(value = "/export/all")
public void exportAll(HttpServletResponse response, LaylineListReq req) throws IOException {// 從類路徑下獲取 Excel 文件資源ClassPathResource classPathResource = new ClassPathResource("template/放線表主數據導入系統模板_template.xlsx");// 獲取文件輸入流InputStream inputStream = classPathResource.getInputStream();String fileName = "xxx"fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20");response.setCharacterEncoding("UTF-8");response.setContentType("application/vnd.ms-excel");response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");EasyExcel.write(response.getOutputStream()).withTemplate(inputStream).sheet().doFill(list);
}
獲取填充模版也需要先轉換成 inputStream
,不能照著官方的寫法讀取文件,下面是官方的寫法,可以對比一下