【问题标题】:android decode string base 64 to bitmapandroid将字符串base 64解码为位图
【发布时间】:2013-06-05 16:29:52
【问题描述】:

大家好,我想问你一件事,我有一个传输字符串的聊天,我什至可以在发送 JPEG 图像之前附加它们以将其转换为字符串,然后在 BITMAP 中解码,只是当我解码时它会崩溃应用程序。我想知道它是否是正确的解码代码。

            NOME = (TextView) row.findViewById(R.id.comment);
    NOME.setText(coment.comment);
    String a = NOME.getText().toString();

    if(a.length() > 1024 )
    {
        byte[] image = Base64.decode(a, 0);
        int lung = a.length();
        Bitmap bitmap = BitmapFactory.decodeByteArray(image, 0, lung);


        Image = (ImageView) row.findViewById(R.id.image);
        Image.setImageBitmap(bitmap);

    }

【问题讨论】:

  • 请在此处添加 LogCat,以便了解您的崩溃原因

标签: android image bitmap bluetooth decode


【解决方案1】:

代码看起来不错,如果我不得不猜测的话,我会说您遇到了内存不足错误,这在加载图像时很常见。退房

http://developer.android.com/training/displaying-bitmaps/load-bitmap.html

加载图片时的一些最佳做法。

【讨论】:

    【解决方案2】:

    图片转Base64字符串的方法

    public static String encodeToString() {
        String imageString = null;
    
        try {
            Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
            ByteArrayOutputStream baos = new ByteArrayOutputStream();  
            bm.compress(Bitmap.CompressFormat.PNG, 100, baos); //bm is the bitmap object   
            byte[] b = baos.toByteArray();
            imageString = Base64.encodeToString(b, Base64.DEFAULT);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return imageString;
    }
    

    将字符串Base64解码成图片的方法

    public static void decodeToImage(String imageString) {
    
        try {
            byte[] imageByte = Base64.decode(imageString, Base64.DEFAULT);
            Bitmap bm = BitmapFactory.decodeByteArray(imageByte, 0, imageByte.length); 
            image_view.setImageBitmap(bm);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-09
      • 1970-01-01
      • 2018-03-19
      • 1970-01-01
      相关资源
      最近更新 更多