文件下载

来源:互联网 发布:网络摄像头的安装方法 编辑:程序博客网 时间:2024/06/06 00:14

    /**     * 文件下载     * @Description:     * @param fileName     * @param request     * @param response     * @return     */    @RequestMapping("/downloadFile")    public String downloadFile(@RequestParam("fileName") String fileName, HttpServletRequest request, HttpServletResponse response) throws UnsupportedEncodingException {        if (fileName != null) {            String realPath = request.getServletContext().getRealPath("/download/");            File file = new File(realPath, fileName);            if (file.exists()) {                String downloadFielName = new String(fileName.getBytes("UTF-8"),"iso-8859-1");                response.setContentType("application/octet-stream");                response.addHeader("Content-Disposition", "attachment;fileName=" + downloadFielName);// 设置文件名                response.setCharacterEncoding("utf-8");                byte[] buffer = new byte[1024];                FileInputStream fis = null;                BufferedInputStream bis = null;                try {                    fis = new FileInputStream(file);                    bis = new BufferedInputStream(fis);                    OutputStream os = response.getOutputStream();                    int i = bis.read(buffer);                    while (i != -1) {                        os.write(buffer, 0, i);                        i = bis.read(buffer);                    }                } catch (Exception e) {                    // TODO: handle exception                    e.printStackTrace();                } finally {                    if (bis != null) {                        try {                            bis.close();                        } catch (IOException e) {                            // TODO Auto-generated catch block                            e.printStackTrace();                        }                    }                    if (fis != null) {                        try {                            fis.close();                        } catch (IOException e) {                            // TODO Auto-generated catch block                            e.printStackTrace();                        }                    }                }            }        }        return null;    }

上边是处理类



下边是下载链接

<a class="btn btn-sm blue " href="<%=path%>/downloadFile?fileName=条款.docx" data-toggle="modal" >    下载模板</a>




原创粉丝点击