//异步请求图片并保存到sd卡中,再从sd卡中读取信息
AsyncTask<String, Void, Bitmap> as = new AsyncTask<String, Void, Bitmap>() {
@Override
protected Bitmap doInBackground(String... params) {
try {
URL url = new URL(params[0]);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
if (connection.getResponseCode() == 200) {
InputStream is = connection.getInputStream();
//手动在sdcard里面建个images文件夹
File fi = new File("mnt/sdcard" + be.imageurl);
//将读取的数据存放到fos流中
FileOutputStream fos = new FileOutputStream(fi);
byte[] by = new byte[1024];
int len = 0;
while ((len=is.read(by)) != -1) {
//到这里写完到fos中
fos.write(by, 0, len);
fos.flush();
}
//Bitmap读取
Bitmap bit = BitmapFactory.decodeFile(fi.getPath());
return bit;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Bitmap result) {
vh.img.setImageBitmap(result);
super.onPostExecute(result);
}
图片存到指定路径在读取出来(IO+File)
最新推荐文章于 2021-08-24 17:00:01 发布