java根据网络地址保存图片的方法
本文实例为大家分享了java根据网络地址保存图片的具体代码,供大家参考,具体内容如下
importjava.io.BufferedInputStream; importjava.io.File; importjava.io.FileOutputStream; importjava.io.IOException; importjava.net.HttpURLConnection; importjava.net.URL; importjava.util.Random; importsun.misc.BASE64Decoder; /** *常用工具类 *@author胡汉三 * *2014-11-21上午10:16:10 */ publicclassTools{ publicstaticvoidmain(String[]args)throwsException{ Stringstr="http://api.map.baidu.com/staticimage?center=106.720568,26.585137&width=697&height=550&markers=106.729443,26.593795&markerStyles=-1,http://api.map.baidu.com/images/marker_red.png,-1,23,25&zoom=15&labels=106.730143,26.594695&labelStyles=师大某小区包子铺,1,14,0xFFFFFF,0xEC624D,1"; Toolsdw=newTools(); dw.saveToFile(str,"E:\\"+AnguoFileUtils.getRandomFileName()+".png"); } /** *根据网络地址保存图片 *@paramdestUrl网络地址 *@paramfilePath图片存储路径 */ publicvoidsaveToFile(StringdestUrl,StringfilePath){ FileOutputStreamfos=null; BufferedInputStreambis=null; HttpURLConnectionhttpUrl=null; URLurl=null; intBUFFER_SIZE=1024; byte[]buf=newbyte[BUFFER_SIZE]; intsize=0; try{ url=newURL(destUrl); httpUrl=(HttpURLConnection)url.openConnection(); httpUrl.connect(); bis=newBufferedInputStream(httpUrl.getInputStream()); fos=newFileOutputStream(filePath); while((size=bis.read(buf))!=-1){ fos.write(buf,0,size); } fos.flush(); }catch(IOExceptione){ }catch(ClassCastExceptione){ }finally{ try{ fos.close(); bis.close(); httpUrl.disconnect(); }catch(IOExceptione){ }catch(NullPointerExceptione){ } } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。