Android开发之Base64与bitmap互转的工具类
生活随笔
收集整理的這篇文章主要介紹了
Android开发之Base64与bitmap互转的工具类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
老套路先看效果圖:
如上圖:分別是bitmap轉base64和base64轉bitmap
直接上代碼。看工具類
package com.example.apidemo.util; /** Copyright (c) 2019, smuyyh@gmail.com All Rights Reserved.* # #* # _oo0oo_ #* # o8888888o #* # 88" . "88 #* # (| -_- |) #* # 0\ = /0 #* # ___/`---'\___ #* # .' \\| |# '. #* # / \\||| : |||# \ #* # / _||||| -:- |||||- \ #* # | | \\\ - #/ | | #* # | \_| ''\---/'' |_/ | #* # \ .-\__ '-' ___/-. / #* # ___'. .' /--.--\ `. .'___ #* # ."" '< `.___\_<|>_/___.' >' "". #* # | | : `- \`.;`\ _ /`;.`/ - ` : | | #* # \ \ `_. \_ __\ /__ _/ .-` / / #* # =====`-.____`.___ \_____/___.-`___.-'===== #* # `=---=' #* # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #* # #* # 佛祖保佑 永無BUG #* # #*/import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.text.TextUtils; import android.util.Base64;import java.io.ByteArrayOutputStream; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream;/*** @author 下一頁5(輕飛揚)* 創建時間:2019/11/12 13:48* 個人小站:http://yhsh.wap.ai(已掛)* 最新小站:http://www.iyhsh.icoc.in* 聯系作者:企鵝 13343401268* 博客地址:http://blog.csdn.net/xiayiye5* 空間名稱:ApiDemo* 項目包名:com.example.apidemo*/ public class Base64Utils {/*** bitmap轉base64** @param bitmap 圖片* @return 返回*/public static 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** @param base64Data 數據* @return 返回圖片*/public static Bitmap base64ToBitmap(String base64Data) {byte[] bytes = Base64.decode(base64Data, Base64.DEFAULT);return BitmapFactory.decodeByteArray(bytes, 0, bytes.length);} }接下來看下調用方法:
public void imageToBase64(View view) {BitmapDrawable drawable = (BitmapDrawable) ivImage1.getDrawable();Bitmap bitmap = drawable.getBitmap();String s = Base64Utils.bitmapToBase64(bitmap);tvBase64Data1.setText(s);}public void base64ToImage(View view) {Bitmap bitmap = Base64Utils.base64ToBitmap(tvBase64Data1.getText().toString());ivImage2.setImageBitmap(bitmap);try {InputStream open = getAssets().open("flower2.jpg");Bitmap image = BitmapFactory.decodeStream(open);ivImage3.setImageBitmap(image);} catch (IOException e) {e.printStackTrace();}}?
?
總結
以上是生活随笔為你收集整理的Android开发之Base64与bitmap互转的工具类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文版「ChatGPT」来了,看论文问问
- 下一篇: 大学老师撞脸《狂飙》高启盛 网友:这压迫