通过url下载图片到本地

http://rongcloud-image.ronghub.com/image_jpeg__RC-2017-03-01_946_1488362231609?e=2147483647&token=EcrrKW5AbOMQaDRwc3ReDNvo3-sL_SO1fSUBKV3H:0VT5Cx7suD6uKNcuqVGsa84mq1M=

 

public staticStringuploadQianURL(StringfileUrl) {//获取文件名,文件名实际上在URL中可以找到

StringfileName = fileUrl.substring(fileUrl.lastIndexOf("/"), fileUrl.indexOf("?")) + ".jpg";

//这里服务器上要将此图保存的路径

StringsavePath = getRequest().getRealPath(UPLOAD_PATH);try{ URL url = newURL(fileUrl);

/*将网络资源地址传给,即赋值给url*//*此为联系获得网络资源的固定格式用法,以便后面的in变量获得url截取网络资源的输入流*/

HttpURLConnection connection = (HttpURLConnection)url.openConnection();

DataInputStream in= newDataInputStream(connection.getInputStream());

/*此处也可用BufferedInputStream与BufferedOutputStream*/

DataOutputStream out = newDataOutputStream(newFileOutputStream(savePath+fileName));

/*将参数savePath,即将截取的图片的存储在本地地址赋值给out输出流所指定的地址*/

byte[] buffer = newbyte[4096];

int count = 0;

/*将输入流以字节的形式读取并写入buffer中*/

while((count = in.read(buffer)) > 0) {

out.write(buffer, 0, count);

}

out.close();

/*后面三行为关闭输入输出流以及网络资源的固定格式*/

in.close();

connection.disconnect();//返回内容是保存后的完整的URLreturnPATH+UPLOAD_PATH+fileName;

/*网络资源截取并存储本地成功返回true*/

} catch(Exception e)

{ System.out.println(e + fileUrl + savePath);returnnull;

} }



作者:Slience无言
链接:https://www.jianshu.com/p/1a5dcfcf0137
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

你可能感兴趣的:(java)