码迷,mamicode.com
首页 > Web开发 > 详细

通过url 下载文件

时间:2019-11-21 23:16:06      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:获取   servlet   弹窗   抽象   路径   attach   下载文件   ack   取数据   

public static void FileDownload(String name,String url,HttpServletResponse response)  {
    // 统一资源
    URL url1= null;
    try {
        url1 = new URL(url);
        // 连接类的父类,抽象类
        URLConnection conn = url1.openConnection();
        // http的连接类
        HttpURLConnection httpURLConnection = (HttpURLConnection) conn;
        //设置请求方式,默认是GET
        httpURLConnection.setRequestMethod("GET");
        // 设置字符编码
        httpURLConnection.setRequestProperty("Charset", "UTF-8");
        // 打开到此 URL引用的资源的通信链接(如果尚未建立这样的连接)
        httpURLConnection.connect();
        // 建立链接从请求中获取数据
        BufferedInputStream bin = new BufferedInputStream(httpURLConnection.getInputStream());
        //弹窗保存路径
        response.addHeader("Content-Disposition","attachment;filename="+ name+".pdf");
        response.setContentType("application/octet-stream");
        OutputStream out = response.getOutputStream();
        int size = 0;
        long len = 0;
        byte[] buf = new byte[2048];
        while ((size = bin.read(buf)) != -1){
            len += size;
            out.write(buf,0,size);
        }
        //关闭资源
        bin.close();
        out.close();
    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (ProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

1

通过url 下载文件

标签:获取   servlet   弹窗   抽象   路径   attach   下载文件   ack   取数据   

原文地址:https://www.cnblogs.com/huanglp/p/11908707.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!