学习HttpURLConnection
示例.
URL url = new URL("http://avatar.csdn.net/7/8/E/3_butterfly5211314.jpg");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// 设置连接超时时间
conn.setConnectTimeout(3000);
InputStream is = null;
// 正常响应时获取输入流, 在这里也就是图片对应的字节流
if (conn.getResponseCode() == 200) {
is = conn.getInputStream();
}
byte[] buffer = new byte[1024];
int len = 0;
// 将文件输出流与文件myavatar.jpg关联
// 这里是输出到工程根目录下
FileOutputStream fos = new FileOutputStream("myavatar.jpg");
// 将输入流循环写到关联文件的输出流
// 为了提高效率, 定义缓冲buffer来缓存输入流
while ((len = is.read(buffer)) > 0) {
fos.write(buffer, 0, len);
}
// 释放资源
is.close();
fos.close();
效果:
欢迎补充指正!