超简单的图片下载
学习记录
本文是根据img标签的src属性内的链接下载图片
1.代码如下
注意:下文中的path 路径如无特别需求的情况下建议采用路径+时间戳命名,
如一定要用绝对路径+文件名命名的话,一定得要有一个图片在文件内供替换/覆盖才能下载成功要不然会报错.
/**
* 链接url下载图片
* 注:path 路径一定要先有个图片用来被替换,如用时间戳命名则不需要
* 如:img/" + System.currentTimeMillis() + ".png
*
*/
@org.junit.Test
public void imgDown() {
//图片的src路径
String srcUrl = "http://pic12.nipic.com/20110221/6727421_210944911000_2.jpg";
//将下载后的图片保存在哪个路径和命名成什么名字,我这里是将图片下载在项目内的img文件内,并以时间戳命名
String path = "img/" + System.currentTimeMillis() + ".png";
URL url = null;
try {
url = new URL(srcUrl);
DataInputStream dataInputStream = new DataInputStream(url.openStream());
FileOutputStream fileOutputStream = new FileOutputStream(new File(path));
ByteArrayOutputStream output = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int length;
while ((length = dataInputStream.read(buffer)) > 0) {
output.write(buffer, 0, length);
}
fileOutputStream.write(output.toByteArray());
dataInputStream.close();
fileOutputStream.close();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("图片下载完成");
}
2.结果如下
1):图片地址

2):下载完成后

这篇博客记录了如何使用Java从img标签的src属性中下载图片。建议使用路径加时间戳的方式命名文件,以避免覆盖问题。文章展示了实现代码并给出了下载完成后的结果。
4018

被折叠的 条评论
为什么被折叠?



