如何在 kotlin 中将 base64 字符串转换为图像 android
How to convert base64 string into image in kotlin android
我有一个表示位图图像的 Base64 字符串。
我需要再次将该字符串转换为位图图像,以便在我的 Android 应用程序的 ImageView 上使用它
怎么做?
您可以使用 android 方法
这里 imageString
是您的图片的 base64String。
这是 java 代码:
byte[] decodedByte = Base64.decode(imageString, Base64.DEFAULT);
Bitmap bitmap = BitmapFactory.decodeByteArray(decodedByte, 0, decodedString.length);
这里是科特林代码:
val decodedByte = Base64.decode(imageString, Base64.DEFAULT)
val bitmap = BitmapFactory.decodeByteArray(decodedByte, 0, decodedString.length)
之后就可以设置到图片视图中了
yourimage.setImageBitmap(bitmap);
您可以使用此代码进行解码:-
val imageBytes = Base64.decode(base64String, Base64.DEFAULT)
val decodedImage = BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.length)
imageView.setImageBitmap(decodedImage)
根据上面的回答,我把它做成了一个函数。
科特林:
你可以创建一个这样的函数
fun decodePicString (encodedString: String): Bitmap {
val imageBytes = Base64.decode(encodedString, Base64.DEFAULT)
val decodedImage = BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.size)
return decodedImage
}
然后调用它并将其设置为您的 imgView
像这样:
val mImgView = findViewById<ImageView>(R.id.imageView)
mImageView.setImageBitmap(decodePicString(your encoded string for the picture))
对于那些寻求 Base64
转化(不仅仅是 Android)的一般答案的人:
你可以利用java.util.Base64
to encode
val imageString = Base64.getEncoder().encode(imageBytes)
to decode
val imageBytes = Base64.getDecoder().decode(imageString)
在 Kotlin 中,您可以只对 byteArray 使用 decode 函数...
private fun stringToBitmap(encodedString: String): Bitmap {
val imageBytes = decode(encodedString, DEFAULT)
return BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.size)
}
我有一个表示位图图像的 Base64 字符串。
我需要再次将该字符串转换为位图图像,以便在我的 Android 应用程序的 ImageView 上使用它
怎么做?
您可以使用 android 方法
这里 imageString
是您的图片的 base64String。
这是 java 代码:
byte[] decodedByte = Base64.decode(imageString, Base64.DEFAULT);
Bitmap bitmap = BitmapFactory.decodeByteArray(decodedByte, 0, decodedString.length);
这里是科特林代码:
val decodedByte = Base64.decode(imageString, Base64.DEFAULT)
val bitmap = BitmapFactory.decodeByteArray(decodedByte, 0, decodedString.length)
之后就可以设置到图片视图中了
yourimage.setImageBitmap(bitmap);
您可以使用此代码进行解码:-
val imageBytes = Base64.decode(base64String, Base64.DEFAULT)
val decodedImage = BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.length)
imageView.setImageBitmap(decodedImage)
根据上面的回答,我把它做成了一个函数。
科特林: 你可以创建一个这样的函数
fun decodePicString (encodedString: String): Bitmap {
val imageBytes = Base64.decode(encodedString, Base64.DEFAULT)
val decodedImage = BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.size)
return decodedImage
}
然后调用它并将其设置为您的 imgView 像这样:
val mImgView = findViewById<ImageView>(R.id.imageView)
mImageView.setImageBitmap(decodePicString(your encoded string for the picture))
对于那些寻求 Base64
转化(不仅仅是 Android)的一般答案的人:
你可以利用java.util.Base64
to
encode
val imageString = Base64.getEncoder().encode(imageBytes)
to
decode
val imageBytes = Base64.getDecoder().decode(imageString)
在 Kotlin 中,您可以只对 byteArray 使用 decode 函数...
private fun stringToBitmap(encodedString: String): Bitmap {
val imageBytes = decode(encodedString, DEFAULT)
return BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.size)
}