@RequestMapping(value = "/downloadProFile") public void downloadProFile(String type, HttpServletRequest req, HttpServletResponse resp) throws IOException { String filename =""; if("1".equals(type)){ filename = "model-2"; }else if("2".equals(type)) { filename = "model-3-1"; }else if("3".equals(type)) { filename = "model-3-2"; }else if("4".equals(type)) { filename = "model-3-3"; }else if("5".equals(type)) { filename = "model-3-4"; }else if("6".equals(type)) { filename = "model-3-5"; } try{ resp.reset();// 清空输出流 String resultFileName = filename + System.currentTimeMillis() + ".xls"; resultFileName = URLEncoder.encode(resultFileName,"UTF-8"); req.setCharacterEncoding("utf-8"); resp.setCharacterEncoding("UTF-8"); resp.setHeader("Content-disposition", "attachment; filename=" + resultFileName);// 设定输出文件头 resp.setContentType("application/msexcel");// 定义输出类型 File outFile=new File(this.downFileDir +"\\"+ filename + ".xlsx"); if(!outFile.exists()){ throw new Exception("文件不存在"); } //输入流:本地文件路径 DataInputStream in = new DataInputStream( new FileInputStream(outFile)); //输出流 OutputStream out = resp.getOutputStream(); //输出文件 int bytes = 0; byte[] bufferOut = new byte[1024]; while ((bytes = in.read(bufferOut)) != -1) { out.write(bufferOut, 0, bytes); } out.close(); in.close(); } catch(Exception e){ e.printStackTrace(); resp.reset(); } }
文件下载
最新推荐文章于 2024-02-05 15:56:08 发布