| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
fbge
10年前发布

根据URL抓取并生成缩略图的Java代码

根据URL抓取并生成缩略图的Java代码

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;      }