Java 字节[]元';不解析图像

Java 字节[]元';不解析图像,java,android,image,bytearray,Java,Android,Image,Bytearray,我的listview有一个自定义适配器,该适配器将填充一个自定义rowItem类的ArrayList,我将数据放在其中 rowItem.getImage()将返回此字节数组: 我将长字符串放在byte[]变量的getBytes() 现在我有了这个代码: byte[] imageData = rowItem.getImage(); Drawable logoDrawable = null; if (imageData != null) { Bitmap lo

我的listview有一个自定义适配器,该适配器将填充一个自定义rowItem类的ArrayList,我将数据放在其中

rowItem.getImage()
将返回此字节数组: 我将长字符串放在
byte[]
变量的
getBytes()

现在我有了这个代码:

    byte[] imageData = rowItem.getImage();
    Drawable logoDrawable = null;
    if (imageData != null) {
        Bitmap logoBitmap = BitmapFactory.decodeByteArray(imageData, 0,
                imageData.length);
        logoDrawable = new BitmapDrawable(context.getResources(), logoBitmap);
    }
    holder.imageView.setImageDrawable(logoDrawable);

但它不会显示图像,如果我从可绘制的地图中设置图像,它将显示,以便重新定义imageview。

数据看起来像base64编码的二进制数据。它首先将解码后的数据传递给
BitmapFactory

您显示的不是字节数组,而是文本,它看起来非常像base64数据

您应该首先尝试“原始”字节:

byte[] imageData = Base64.decode(rowItem.getImage(), Base64.DEFAULT);
。。。或者,无论您从何处获得
行项目
,都可以进行修复,以便为您执行base64解码

byte[] imageData = Base64.decode(rowItem.getImage(), Base64.DEFAULT);