Base64字符串中的错误要映像

时间:2016-02-09 10:01:43

标签: android

android代码错误:

byte[] decodedString = Base64.decode(""aHR0cHM6Ly9ldGlja2V0LmlwZWt0ci5jb20vd3Nib3MzL0xvZ29WZXIuQXNweD9mbnVtPTI2NQ=="", Base64.DEFAULT);
Bitmap base64Bitmap = BitmapFactory.decodeByteArray(decodedString, 0,
                    decodedString.length);
Log.d("img", String.valueOf(base64Bitmap));
imagview.setImageBitmap(base64Bitmap);

logcat消息

SkImageDecoder::Factory returned null

3 个答案:

答案 0 :(得分:2)

您的base64字符串已损坏。

通过以下链接查看:

http://codebeautify.org/base64-to-image-converter

请尝试解码一些不同的字符串,然后检查它。

或尝试以下代码:

 byte[] encodeByte = Base64.decode("aHR0cHM6Ly9ldGlja2V0LmlwZWt0ci5jb20vd3Nib3MzL0xvZ29WZXIuQXNweD9mbnVtPTI2NQ", Base64.DEFAULT);
            Bitmap bitmap = BitmapFactory.decodeByteArray(encodeByte, 0,
                    encodeByte.length);
            return bitmap;

如果仍然无法工作,请尝试使用Base64.NOWRAP而不是Base64.DEFAULT。

答案 1 :(得分:0)

检查此功能:

final

答案 2 :(得分:0)

试试这个

ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(this).build();
    ImageLoader.getInstance().init(config);
    ImageLoader imageLoader = ImageLoader.getInstance();

    ImageView imageView = (ImageView) this.findViewById(R.id.imageView);
    try {
        url = decodeBase64String(base64String);
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    }

    imageLoader.displayImage(url, imageView);
String decodeBase64String(String encodedString) throws   UnsupportedEncodingException {
    byte[] data = Base64.decode(encodedString, Base64.DEFAULT);
    return new String(data, "UTF-8");
}

set dependency -compile'c​​om.nostra13.universalimageloader:universal-image-loader:1.9.5'