java根据url抓取并生成缩略图的示例

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

java根据url抓取并生成缩略图的示例

public static Bitmap loadImageFromUrl(String url, int sc) {

URL m;

InputStream i = null;

BufferedInputStream bis = null;

ByteArrayOutputStream out = null;

byte isBuffer[] = new byte[1024];

if (url == null)

return null;

try {

m = new URL(url);

i = (InputStream) m.getContent();

bis = new BufferedInputStream(i, 1024 * 4);

out = new ByteArrayOutputStream();

int len = 0;

while ((len = bis.read(isBuffer)) != -1) {

out.write(isBuffer, 0, len);

}

out.close();

bis.close();

} catch (MalformedURLException e1) {

e1.printStackTrace();

return null;

} catch (IOException e) {

e.printStackTrace();

}

if (out == null)

return null;

byte[] data = out.toByteArray();

BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true;

BitmapFactory.decodeByteArray(data, 0, data.length, options); options.inJustDecodeBounds = false;

int be = (int) (options.outHeight / (float) sc);

if (be <= 0) {

be = 1;

} else if (be > 3) {

be = 3;

}

options.inSampleSize = be;

Bitmap bmp = null;

try {

bmp = BitmapFactory.decodeByteArray(data, 0, data.length, options); // 返回缩略图

} catch (OutOfMemoryError e) {

// TODO: handle exception

System.gc();

bmp = null;

}

return bmp;

}

相关文档
最新文档