在 android 中显示图像,在 sql 中存储为 varbinary

display images in android stored as varbinary in sql

我在 SQL table 中将图像存储为 varbinary,如何在 android 客户端

中显示图像

你需要做的是

  • Image 字符串从 DB 转换为 ByteArray
  • 在android中使用BitmapFactoryByteArray转换为Bitmap
  • 设置图像视图的位图
    • val imageText = "FFDD8FFE000104A4694600010101000000000000FFEE1138..."
    • myImageView.setImageBitmap(getBitmap(imageText))

您可以使用以下函数 [kotlin]

import android.graphics.Bitmap
import android.graphics.BitmapFactory
import com.google.android.gms.common.util.Hex

/**
 * Converts a hex string to Bitmap
 *
 * @param image  hex string e.g. "FFD8FFE0..."
 * @return Bitmap
 */
fun getBitmap(image: String): Bitmap {
    // Convert String to ByteArray
    val byteArray = Hex.stringToBytes(image)
    // Convert ByteArray Bitmap
    return BitmapFactory.decodeByteArray(byteArray, 0, byteArray.size)
}