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

时间:2010-05-25 06:47:39

标签: android image base64

有什么方法可以将base64字符串转换为Android中的图像?我从通过套接字连接的服务器接收xml中的base64字符串。

4 个答案:

答案 0 :(得分:2)

Android中现在有Base64个实用程序,但它们只能在Android OS 2.2中使用。

答案 1 :(得分:1)

查看http://www.source-code.biz/base64coder/java/或将base64字符串转换为字节数组的任何其他示例,然后使用ImageIcon(byte[] imageData)构造函数。

答案 2 :(得分:0)

在未能获得任何解决方案(甚至在Stackoverflow上)之后,我构建了一个插件,将Base64 PNG Strings转换为我共享here的文件。 希望有所帮助。

答案 3 :(得分:0)

如果您想将 base64 字符串转换为图片文件(例如 .png 等)并将其保存到某个文件夹,则可以使用以下代码:

byte[] btDataFile = Base64.decode(base64Image, Base64.DEFAULT);
String fileName = YOUR_FILE_NAME + ".png";
try {

  File folder = new File(context.getExternalFilesDir("") + /PathToFile);
  if(!folder.exists()){
    folder.mkdirs();
  }

  File myFile = new File(folder.getAbsolutePath(), fileName);
  myFile.createNewFile();

  FileOutputStream osf = new FileOutputStream(myFile);
  osf.write(btDataFile);
  osf.flush();
  osf.close();
} catch (FileNotFoundException e) {
  e.printStackTrace();
} catch (IOException e) {
  e.printStackTrace();
} 

并确保您在清单文件中提供了以下必要的权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />