java-根据图片地址下载到本地
package com.tiandy.zhfz.accesszonemanage.core.utils; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; import java.net.URL; import java.net.URLConnection; import java.util.Arrays; import java.util.List; /** * @authoer: fengwen * @createDate: 2022/8/1 13:39 * @description: */ public class FileUtils { public static void main(String[] args) throws Exception { download(Arrays.asList( "http://10.50.13.192:9017/image/202208011036_48080fc866df4b32951d7afd3702069f", "http://10.50.13.192:9017/image/202208011036_08e683a610bb4b34832aca1281560442", "http://10.50.13.192:9017/image/202207291750_936238a2d8dd4250a844843aa1f8d6cc")); } public static final String savePath = "/home/apps/plugins/TdPluginAccessZoneManage/web/download/"; // public static final String savePath = "D://image"; public static final String fileType = ".png"; public static void download(List urlStringList) { OutputStream os = null; InputStream is = null; try { for (Object urlStringObj : urlStringList) { String urlString = (String) urlStringObj; // 构造URL URL url = new URL(urlString); // 打开连接 URLConnection con = url.openConnection(); //设置请求超时为5s con.setConnectTimeout(5 * 1000); // 输入流 is = con.getInputStream(); // 1K的数据缓冲 byte[] bs = new byte[1024]; // 读取到的数据长度 int len; // 路径 String filename = urlString.substring(urlString.lastIndexOf("/")); // System.out.println(filename); // String str = urlString.split(filename)[0]; // System.out.println(str); // String[] split = str.split("//"); // int i = split[1].indexOf("/"); // String substring = split[1].substring(i); // System.out.println(substring); // 输出的文件流 File sf = new File(savePath); if (!sf.exists()) { sf.mkdirs(); } os = new FileOutputStream(sf.getPath() + filename+fileType); // 开始读取 while ((len = is.read(bs)) != -1) { os.write(bs, 0, len); } // System.out.println("下载完成"); } // 完毕,关闭所有链接 os.close(); is.close(); }catch (Exception e){ e.printStackTrace(); }finally { try { if(null != os){ os.close(); } if(null != is){ is.close(); } }catch (Exception e){ e.printStackTrace(); } } } }
参考:
下一篇:
连续系统的复频域分析