String filePath="c:/01.jpg"; Bitmap bitmap=BitmapFactory.decodeFile(filePath);
如果图片过大,可能导致Bitmap对象装不下图片
解决办法:
String filePath="c:/01.jpg"; Bitmap bitmap=BitmapFactory.decodeFile(filePath,getBitmapOption(2)); //将图片的长和宽缩小味原来的1/2 private Options getBitmapOption(int inSampleSize){ System.gc(); BitmapFactory.Options options = new BitmapFactory.Options(); options.inPurgeable = true; options.inSampleSize = inSampleSize; return options; }
Bitmap对象保存味图片文件
public void saveBitmapFile(Bitmap bitmap){ File file=new File("/mnt/sdcard/pic/01.jpg");//将要保存图片的路径 try { BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(file)); bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bos); bos.flush(); bos.close(); } catch (IOException e) { e.printStackTrace(); } }