java 使用IO从网络下载图片-

来源:互联网 发布:微信三级分销拼团源码 编辑:程序博客网 时间:2024/05/22 06:42

1.依赖包 httpclient-4.4.1.jar 包

2.贴上代码记录之


第一个参数是网络图片地址,第二个是保存到本地的目录,第三个是存放到本地的文件夹的名字。

/*** * 下载图片到本地 * @param imgUri * @param fileName * @return  */public static String downloadImg(String imgUri,String directory, String fileName) {HttpClient client = HttpClients.createDefault();HttpGet get = new HttpGet(imgUri);FileImageOutputStream fios=null;InputStream in=null;ByteArrayOutputStream baos =null;try {baos= new ByteArrayOutputStream();HttpResponse hr = client.execute(get);HttpEntity entity = hr.getEntity(); in= entity.getContent();byte[] buffer = new byte[1024];int len = -1;while ((len = in.read(buffer))>0) {baos.write(buffer,0,len);}byte[] b = baos.toByteArray();//创建目录File dir = new File(directory);if(!dir.exists()){dir.mkdirs();File file=new File(dir,fileName);if(!file.exists()){file.createNewFile(); fios = new FileImageOutputStream(file);fios.write(b);}}else{File file=new File(dir,fileName);file.createNewFile();fios = new FileImageOutputStream(file);fios.write(b);}return dir+"/"+fileName;} catch (IOException e) {//异常处理if(null!=fios){try {fios.close();} catch (IOException e1) { }}} return null;}

3.测试代码


String newImgUrl=downloadImg(imgUrl,"/home/test/workspace/images","test"+System.currentTimeMillis()+".png");


0 0
原创粉丝点击