zoukankan      html  css  js  c++  java
  • 根据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();
    }
  • 相关阅读:
    MySQL详细安装(windows)
    深入理解java虚拟机
    java语言实现机制
    java基本类型的长度
    关于SQLite数据库 字段 DateTime 类型
    "初识".Net Winfom
    Linux Shell脚本编程while语句
    mysql主从搭建
    oracle dg状态检查及相关命令
    Oracle 11.2.0.4单实例打补丁
  • 原文地址:https://www.cnblogs.com/dongzhongwei/p/5964731.html
Copyright © 2011-2022 走看看