Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从Json字节[]值在imageView中显示图像,SkImageDecoder::Factory返回null_Java_Android_Json - Fatal编程技术网

Java 从Json字节[]值在imageView中显示图像,SkImageDecoder::Factory返回null

Java 从Json字节[]值在imageView中显示图像,SkImageDecoder::Factory返回null,java,android,json,Java,Android,Json,我正在尝试将字节[]转换为图像。字节[]来自JSON,格式如下: json的字节数组值: "255,216,255,224,0,16,74,70,73,70,0,1,1,0,0,1,0,1,0,0,255,219,0,132,0,9,6,7,20,19,18,20,20,19,20,21,22,20,22,20,21,...". 我正在使用以下代码将字节[]转换为位图图像 String encodedString="255,216,255,224,0,16,74,70,

我正在尝试将字节[]转换为图像。字节[]来自JSON,格式如下:

json的字节数组值:

"255,216,255,224,0,16,74,70,73,70,0,1,1,0,0,1,0,1,0,0,255,219,0,132,0,9,6,7,20,19,18,20,20,19,20,21,22,20,22,20,21,...".
我正在使用以下代码将字节[]转换为位图图像

            String encodedString="255,216,255,224,0,16,74,70,73,70,0,1,1,0,0,1,0,1,0....";
            byte[] encodeByte = encodedString.getBytes();
            System.out.println("encodeByte : "+encodeByte);
            System.out.println("encodeByte.length : "+encodeByte.length);
            Bitmap photo=BitmapFactory.decodeByteArray(encodeByte, 0,                     encodeByte.length);
            System.out.println("Bitmap photo : "+photo);
            btnImg.setImageBitmap(photo);
我在Logcat中得到以下错误:

10-31 00:20:57.210: I/System.out(1315): encodeByte : [B@b3d249d8
10-31 00:20:57.210: I/System.out(1315): encodeByte.length : 18320
10-31 00:20:57.220: D/skia(1315): --- SkImageDecoder::Factory returned null
10-31 00:20:57.220: I/System.out(1315): Bitmap photo : null

我遇到了类似这样的错误。请帮助我解决此问题。

这是如何将byteArray转换为Base64编码字符串并将其转换为位图图像的

            String encodedString="255,216,255,224,0,16,74,70,73,70,0,1,1,0,0,1,0,1,0....";
            byte[] encodeByte = encodedString.getBytes();
            System.out.println("encodeByte : "+encodeByte);
            System.out.println("encodeByte.length : "+encodeByte.length);
            Bitmap photo=BitmapFactory.decodeByteArray(encodeByte, 0,                     encodeByte.length);
            System.out.println("Bitmap photo : "+photo);
            btnImg.setImageBitmap(photo);
使用以下代码将字节[]转换为位图图像

            String encodedString="255,216,255,224,0,16,74,70,73,70,0,1,1,0,0,1,0,1,0....";
            byte[] encodeByte = encodedString.getBytes();
            System.out.println("encodeByte : "+encodeByte);
            System.out.println("encodeByte.length : "+encodeByte.length);
            Bitmap photo=BitmapFactory.decodeByteArray(encodeByte, 0,                     encodeByte.length);
            System.out.println("Bitmap photo : "+photo);
            btnImg.setImageBitmap(photo);
//将byteArray转换为base64字符串

            byte[] photo_byte = (your byte[] from json response);
            //To encode byte[] as string for other purpose
            String photoString =Base64.encodeToString(photo_byte, Base64.DEFAULT);

            //decode the string to bitmap 
            byte[] decodedString = Base64.decode(photoString, Base64.DEFAULT);
            Bitmap decoded_photo_byte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);

使用这个代码,我得到了同样的错误。10-31 01:49:05.040:D/skia1575:-SkImageDecoder::工厂返回空10-31 01:49:05.040:I/System.out1575:位图照片:空