在android中将base64字符串转换为PNG图像

Moa*_*ani 1 base64 android image

我想将Base64字符串转换为 png 格式的ImageView. 我现在正在使用:

byte[] decodedString = Base64.decode(imageString, Base64.DEFAULT);
    Bitmap bmp = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
    imageView.setImageBitmap(bmp);
Run Code Online (Sandbox Code Playgroud)

它工作完美,但我想要一个 png 图像。谢谢。

sm_*_*sm_ 7

用这个

    byte[] decodedString = Base64.decode(imageString, Base64.DEFAULT);
    // Bitmap Image
    Bitmap bitmap = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);

    String filename = "MyImage.png";
    File file= Environment.getExternalStorageDirectory();
    File dest = new File(file, filename);

    try {
         FileOutputStream out = new FileOutputStream(dest);
         bitmap.compress(Bitmap.CompressFormat.PNG, 90, out);
         out.flush();
         out.close();
    } catch (Exception e) {
         e.printStackTrace();
    }
Run Code Online (Sandbox Code Playgroud)

所需的权限AndroidManifest.xml

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Run Code Online (Sandbox Code Playgroud)