Android 之 Bitmap 和 File 相互转换

2020-10-26  本文已影响0人  Ello_Orld

图片文件转为Bitmap对象

 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(); 
  }   
}
上一篇 下一篇

猜你喜欢

热点阅读