android bitmap和base64之间的转换

android开发中对图片的处理是经常遇到的,压缩,剪裁等等,或是把bitmap或文件转为base64字符串上传给后台

代码如下

  /**
     * bitmap转为base64
     * @param bitmap
     * @return
     */
    public String bitmapToBase64(Bitmap bitmap) {
        String result = null;
        ByteArrayOutputStream baos = null;
        try {
            if (bitmap != null) {
                baos = new ByteArrayOutputStream();
                bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);

                baos.flush();
                baos.close();

                byte[] bitmapBytes = baos.toByteArray();
                result = Base64.encodeToString(bitmapBytes, Base64.DEFAULT);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (baos != null) {
                    baos.flush();
                    baos.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return result;
    }
/** 
 * base64转为bitmap 
 * @return 
 */  
public static Bitmap base64ToBitmap(String base64Data) {  
    byte[] bytes = Base64.decode(base64Data, Base64.DEFAULT);  
    return BitmapFactory.decodeByteArray(bytes, 0, bytes.length);  
}  
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页