android下载网络图片
2014-04-14 15:50
351 查看
[java]
view plaincopyprint?
package com.home;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class DownloadImage {
public DownloadImage() {
try {
getImage();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new DownloadImage();
}
/**
* 读取网络图片
*
* @throws Exception
*/
public void getImage() throws Exception {
// 图片url路劲
String urlpath = "http://pica.nipic.com/2008-05-23/200852381811521_2.jpg";
// 建立URL对象,抛出异常
URL url = new URL(urlpath);
// 得到HttpURLConnection对象
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// 声明请求方式
conn.setRequestMethod("GET");
// 设置连接超时
4000
conn.setConnectTimeout(6 * 1000);
// 连接成功
if (conn.getResponseCode() == 200) {
// 得到服务器传回来的数据,相对我们来说输入流
InputStream inputStream = conn.getInputStream();
// 得到数据
byte[] data = readInStream(inputStream);
// 创建保存文件
File file = new File("C:/image.jpg");
// 创建一个文件输出流
FileOutputStream outputStream = new FileOutputStream(file);
// 将我们所得的二进制数据全部写入我们建好的文件中
outputStream.write(data);
// 关闭输出流
outputStream.close();
}
}
/**
* 读取流文件的内容
*
* @param inputStream
* @return
* @throws Exception
*/
public byte[] readInStream(InputStream inputStream) throws Exception {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
// 声明缓冲区
byte[] buffer = new byte[1024];
// 定义读取默认长度
int length = -1;
while ((length = inputStream.read(buffer)) != -1) {
// 把缓冲区中输出到内存中
byteArrayOutputStream.write(buffer, 0, length);
}
// 关闭输出流
byteArrayOutputStream.close();
// 关闭输入流
inputStream.close();
// 返回这个输出流的字节数组
return byteArrayOutputStream.toByteArray();
}
}
view plaincopyprint?
package com.home;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class DownloadImage {
public DownloadImage() {
try {
getImage();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new DownloadImage();
}
/**
* 读取网络图片
*
* @throws Exception
*/
public void getImage() throws Exception {
// 图片url路劲
String urlpath = "http://pica.nipic.com/2008-05-23/200852381811521_2.jpg";
// 建立URL对象,抛出异常
URL url = new URL(urlpath);
// 得到HttpURLConnection对象
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// 声明请求方式
conn.setRequestMethod("GET");
// 设置连接超时
4000
conn.setConnectTimeout(6 * 1000);
// 连接成功
if (conn.getResponseCode() == 200) {
// 得到服务器传回来的数据,相对我们来说输入流
InputStream inputStream = conn.getInputStream();
// 得到数据
byte[] data = readInStream(inputStream);
// 创建保存文件
File file = new File("C:/image.jpg");
// 创建一个文件输出流
FileOutputStream outputStream = new FileOutputStream(file);
// 将我们所得的二进制数据全部写入我们建好的文件中
outputStream.write(data);
// 关闭输出流
outputStream.close();
}
}
/**
* 读取流文件的内容
*
* @param inputStream
* @return
* @throws Exception
*/
public byte[] readInStream(InputStream inputStream) throws Exception {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
// 声明缓冲区
byte[] buffer = new byte[1024];
// 定义读取默认长度
int length = -1;
while ((length = inputStream.read(buffer)) != -1) {
// 把缓冲区中输出到内存中
byteArrayOutputStream.write(buffer, 0, length);
}
// 关闭输出流
byteArrayOutputStream.close();
// 关闭输入流
inputStream.close();
// 返回这个输出流的字节数组
return byteArrayOutputStream.toByteArray();
}
}
package com.home; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; public class DownloadImage { public DownloadImage() { try { getImage(); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { new DownloadImage(); } /** * 读取网络图片 * * @throws Exception */ public void getImage() throws Exception { // 图片url路劲 String urlpath = "http://pica.nipic.com/2008-05-23/200852381811521_2.jpg"; // 建立URL对象,抛出异常 URL url = new URL(urlpath); // 得到HttpURLConnection对象 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 声明请求方式 conn.setRequestMethod("GET"); // 设置连接超时 conn.setConnectTimeout(6 * 1000); // 连接成功 if (conn.getResponseCode() == 200) { // 得到服务器传回来的数据,相对我们来说输入流 InputStream inputStream = conn.getInputStream(); // 得到数据 byte[] data = readInStream(inputStream); // 创建保存文件 File file = new File("C:/image.jpg"); // 创建一个文件输出流 FileOutputStream outputStream = new FileOutputStream(file); // 将我们所得的二进制数据全部写入我们建好的文件中 outputStream.write(data); // 关闭输出流 outputStream.close(); } } /** * 读取流文件的内容 * * @param inputStream * @return * @throws Exception */ public byte[] readInStream(InputStream inputStream) throws Exception { ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); // 声明缓冲区 byte[] buffer = new byte[1024]; // 定义读取默认长度 int length = -1; while ((length = inputStream.read(buffer)) != -1) { // 把缓冲区中输出到内存中 byteArrayOutputStream.write(buffer, 0, length); } // 关闭输出流 byteArrayOutputStream.close(); // 关闭输入流 inputStream.close(); // 返回这个输出流的字节数组 return byteArrayOutputStream.toByteArray(); } }
相关文章推荐
- Android开发利用Volley框架下载和缓存网络图片
- 【Android】【xUtils3网络下载图片的简单操作】
- Android异步下载网络图片(其三:ExecutorService)
- Android学习--下载网络图片
- android-下载保存网络图片并显示下载进度条
- Android异步下载网络图片(其三)
- Android 用AsyncTask下载网络图片并显示百分比
- Android开发之根据Service的生命周期特点后台连接网络下载图片(源代码分享)
- Android 从网络下载图片OOM
- android 从网络上下载图片
- Android异步下载网络图片(其一Handler)
- Android如何下载网络图片
- Android--通过Http下载网络图片
- Android使用OkHttp框架下载网络图片
- Android开发之异步获取并下载网络资源-下载图片和下载文本内容
- Android下载网络图片资源
- Android 异步下载图片并缓存到本地以节约网络流量
- Android显示从网络下载图片偏小的问题
- Android 下载网络图片 简单Demo
- android下载网络图片并缓存