• 根据url地址单个或批量下载图片


    我们在java开发的时候会遇到通过url地址下载图片的情况。方便起见,我把通过url地址下载图片封装了tool工具类,方便以后使用
    1.根据如:http://abc.com/hotels/a.jpg 的url地址下载文件(图片)
     
     
    //调用下面的方法
    download(urlString, filename, savePath+"/"+String.valueOf(imgList.get(i).get("hotelId")));
     
    /**
    * 根据路径 下载图片 然后 保存到对应的目录下
    * @param urlString 下载源地址路径 http://media.expedia.com/hotels/1000000/10000/100/1/1_17_b.jpg
    * @param filename 文件名
    * @param savePath 保存路径 /jdylog/pic/JDY000001
    * @return
    * @throws Exception
    */
    public void download(String urlString, String filename,String savePath) throws Exception {
    // 构造URL
    // System.setProperty("http.proxySet", "true");
    // System.setProperty("http.proxyHost", "192.168.2.138");
    // System.setProperty("http.proxyPort", "1081");
    URL url = new URL(urlString);
    // 打开连接
    URLConnection con = url.openConnection();
    //设置请求的路径
    con.setConnectTimeout(5*1000);
    // 输入流
    InputStream is = con.getInputStream();
     
    // 1K的数据缓冲
    byte[] bs = new byte[1024];
    // 读取到的数据长度
    int len;
    // 输出的文件流
    File sf=new File(savePath);
    if(!sf.exists()){
    sf.mkdirs();
    }
    OutputStream os = new FileOutputStream(sf.getPath()+"/"+filename);
    // 开始读取
    while ((len = is.read(bs)) != -1) {
    os.write(bs, 0, len);
    }
    // 完毕,关闭所有链接
    os.close();
     
    is.close();
    }
  • 相关阅读:
    mac下创建nativescript angular项目
    图解原型及原型链
    类型转换规则
    无符号右移操作符 this.length >>> 0
    认识 void 运算符
    Spark ML机器学习库评估指标示例
    CentOS7 Cloudera Manager6 完全离线安装 CDH6 集群
    Ambari HDP 下 SPARK2 与 Phoenix 整合
    IDEA设置
    Tricky Sum
  • 原文地址:https://www.cnblogs.com/dongzhongwei/p/5964731.html
Copyright © 2020-2023  润新知