zoukankan      html  css  js  c++  java
  • 文件下载

    @RequestMapping("/download")
    public String download( String fileName ,String filePath, HttpServletRequest request, HttpServletResponse response){

    response.setContentType("text/html;charset=utf-8");
    try {
    request.setCharacterEncoding("UTF-8");
    } catch (UnsupportedEncodingException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
    }

    java.io.BufferedInputStream bis = null;
    java.io.BufferedOutputStream bos = null;

    String downLoadPath = filePath; //注意不同系统的分隔符
    // String downLoadPath =filePath.replaceAll("/", "\\\\"); //replace replaceAll区别 *****
    System.out.println(downLoadPath);

    try {
    long fileLength = new File(downLoadPath).length();
    response.setContentType("application/x-msdownload;");
    response.setHeader("Content-disposition", "attachment; filename=" + new String(fileName.getBytes("utf-8"), "ISO8859-1"));
    response.setHeader("Content-Length", String.valueOf(fileLength));
    bis = new BufferedInputStream(new FileInputStream(downLoadPath));
    bos = new BufferedOutputStream(response.getOutputStream());
    byte[] buff = new byte[2048];
    int bytesRead;
    while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) {
    bos.write(buff, 0, bytesRead);
    }
    } catch (Exception e) {
    e.printStackTrace();
    } finally {
    if (bis != null)
    try {
    bis.close();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    if (bos != null)
    try {
    bos.close();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }
    return null;
    }
  • 相关阅读:
    ajax实现无刷新上传附件并且显示进度条的实例
    thinkphp ajax 无刷新分页效果的实现
    微信错误码详述
    eclispse修改项目项目编码
    构建高性能web之路------mysql读写分离实战
    Hibernate 的Ehache学习
    sessionStorage和localStorage
    sql中的group by 和 having 用法解析
    Hibernate DetachedCriteria实现
    JavaScript eval_r() 函数
  • 原文地址:https://www.cnblogs.com/cuiguangpeng/p/11539547.html
Copyright © 2011-2022 走看看