/** * 将图片转换成Base64编码的字符串 */ public static String imageToBase64(String path){ if(TextUtils.isEmpty(path)){ return null; } InputStream is = null; byte[] data = null; String result = null; try{ is = new FileInputStream(path); //创建一个字符流大小的数组。 data = new byte[is.available()]; //写入数组 is.read(data); //用默认的编码格式进行编码 result = Base64.encodeToString(data,Base64.DEFAULT); }catch (Exception e){ e.printStackTrace(); }finally { if(null !=is){ try { is.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; }
将Base64编码的字符串转换成图片 /** * 将Base64编码转换为图片 * @param base64Str * @param path * @return true */ public static boolean base64ToFile(String base64Str,String path) { byte[] data = Base64.decode(base64Str,Base64.NO_WRAP); for (int i = 0; i < data.length; i++) { if(data[i] < 0){ //调整异常数据 data[i] += 256; } } OutputStream os = null; try { os = new FileOutputStream(path); os.write(data); os.flush(); os.close(); return true; } catch (FileNotFoundException e) { e.printStackTrace(); return false; }catch (IOException e){ e.printStackTrace(); return false; } }