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

    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

  • 相关阅读:
    VS2010程序打包
    Extjs布局
    Extjs4.x完美treepanel checkbox无限级选中与取消
    extjs 4.2 日期控件 选择时分秒功能
    extjs4.0下的日期控件的星期显示为y的解决办法
    linux下mysql 配置
    坐标轴笔记
    cpp 内嵌函数(lambda,struct)
    ue4 笔记
    ue4 蓝图方法备份
  • 原文地址:https://www.cnblogs.com/huanglp/p/11908707.html
Copyright © 2011-2022 走看看