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

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");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值