程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 編碼-BitmapFactory.decodeByteArray為空,求大神解惑

編碼-BitmapFactory.decodeByteArray為空,求大神解惑

編輯:編程綜合問答
BitmapFactory.decodeByteArray為空,求大神解惑
 String stra = d.getResult().getImage();

            try {
                byte[] data=null;
                data = stra.getBytes("UTF-8");
                // 為UTF8編碼
                // 把二進制圖片轉成位圖
                Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0,
                        data.length,null);
                image.setImageBitmap(bitmap); 
            } catch (UnsupportedEncodingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

data中有數據,bitmap為空,求解

最佳回答:


你的字節數據要先轉成YUV格式的設置好image類型才可以調用decodeByteArray();改成這樣
YuvImage yuvimage=new YuvImage(data, ImageFormat.NV21, 20,20, null); //20、20分別是圖的寬度與高度
ByteArrayOutputStream baos = new ByteArrayOutputStream();
yuvimage.compressToJpeg(new Rect(0, 0,20, 20), 80, baos);//80--JPG圖片的質量[0-100],100最高
byte[] jdata = baos.toByteArray();
bitmap = BitmapFactory.decodeByteArray(jdata, 0, jdata.length);

xdx1399513637
EricFantastic
xdx1399513637
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved