文件下载、

323 阅读1分钟

    //点击文件下

 @RequestMapping("/getFj")

 public void getFj(HttpServletResponse res, String fid,String fname) throws UnsupportedEncodingException { 

 ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine(); RepositoryService repositoryService=processEngine.getRepositoryService(); res.setHeader("content-type", "application/octet-stream"); res.setContentType("application/octet-stream");

 //中文文件名不行,需要转码 

 String file_name = new String(fname.getBytes(), "ISO-8859-1"); res.setHeader("Content-Disposition", "attachment;filename=" + file_name); 

 byte[] buff = new byte[1024]; 

 BufferedInputStream bis = null; 

 OutputStream os = null; 

 try { os = res.getOutputStream(); 

 bis=new BufferedInputStream(repositoryService.getResourceAsStream(fid,fname)); 

 int i = bis.read(buff); 

 while (i != -1) {

 os.write(buff, 0, buff.length);

 os.flush(); i = bis.read(buff); 

 } } 

catch (IOException e) { 

 e.printStackTrace(); }

 finally { if (bis != null) {

 try { bis.close(); } 

catch (IOException e) { e.printStackTrace(); } } } }