在项目进行编译时,控制台会出现以下警告信息,提示sun.misc.BASE64Decoder是内部API,会在将来的版本的进行删除,需要避免使用
不想看到这个提示~
public static String imageToBase64ByLocal(File file) { byte[] data = null; // 读取图片字节数组 try (InputStream in = new FileInputStream(file.getPath())) { data = new byte[in.available()]; in.read(data); } catch (IOException e) { e.printStackTrace(); } // 对字节数组Base64编码 BASE64Encoder encoder = new BASE64Encoder(); // 返回Base64编码过的字节数组字符串 return encoder.encode(data); }
public static String imageToBase64ByLocal(File file) { byte[] data = null; // 读取图片字节数组 try (InputStream in = new FileInputStream(file.getPath())) { data = new byte[in.available()]; in.read(data); } catch (IOException e) { e.printStackTrace(); } // 对字节数组Base64编码 Base64.Encoder encoder = Base64.getEncoder(); // 返回Base64编码过的字节数组字符串 return encoder.encodeToString(data); }
同理,Decoder也一样,详情可以参考java8的api文档,里面还提供了好多的编码和解码的方法