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

    import java.net.HttpURLConnection;
    import java.net.MalformedURLException;
    import java.net.URL;

      

    /** * 下载飞行资料夹 * * @param fileName * @param response * @return */ @RequestMapping(value = "/download", method = {RequestMethod.POST, RequestMethod.GET}) @ResponseBody public Object onDownload(String fileName, HttpServletResponse response) { ResponseJson json = new ResponseJson(); HttpURLConnection con = null; InputStream is = null; try { URL url = new URL(ServiceConstants.DOWNLOAD_URL_FLIGHT + fileName); // 远程文件url,如:http://211.64.201.201/uploadfile/nyz.mp3 con = (HttpURLConnection) url.openConnection(); response.setContentType("multipart/form-data"); // 自动识别下载文件格式 response.setHeader("Content-Disposition", "attachment;fileName=" + fileName.substring(8, fileName.length())); // 文件名 response.setHeader("Content-Length", con.getHeaderField("Content-Length")); // 文件大小 is = con.getInputStream(); byte[] b = new byte[1024]; int len = 0; while ((len = is.read(b)) != -1) { response.getOutputStream().write(b, 0, len); // 仅写入读取到的字符,区别于write(b) } response.getOutputStream().flush(); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { if (con != null) { con.disconnect(); } if (is != null) { is.close(); } if (response.getOutputStream() != null) { response.getOutputStream().close(); } } catch (IOException e) { e.printStackTrace(); } } json.setSuccess(true); return json; }
  • 相关阅读:
    mysql 新建的%用户无法本地(localhost)登录
    MySQL Change root Password
    Linux装机环境配置记录
    linux 服务配置(synergy)
    shell特殊字符
    pdf中有道不能够整句划词的解决方法
    shell 注释
    VC AddFilesToProject 不能使用
    CFLoatEdit
    ln 命令
  • 原文地址:https://www.cnblogs.com/zhiqsyr/p/3921515.html
Copyright © 2011-2022 走看看