1. 文件转为Base64
/**
* 文件转为Base64
* @param filePath 文件的位置
* @return 文件的Base64值
*/
public String encryptToBase64(String filePath) {
if (filePath == null) {
return null;
}
try {
byte[] b = Files.readAllBytes(Paths.get(filePath));
return Base64.getEncoder().encodeToString(b);
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
2. Base64转文件
/**
* Base64转文件
* @param base64 文件的Base64值
* @param filePath 文件将要保存的位置
* @return msg
*/
public String decryptByBase64(String base64, String filePath) {
if (base64 == null || filePath == null) {
return "生成文件失败,数据为空";
}
try {
Files.write(Paths.get(filePath), Base64.getDecoder().decode(base64),StandardOpenOption.CREATE);
} catch (IOException e) {
e.printStackTrace();
}
return "指定路径下生成文件成功";
}
注意:
StandardOpenOption.CREATE
是处理文件的方式,这里设置的是不管路径下有或没有,都创建这个文件,有则覆盖。
StandardOpenOption
有很多参数可调用,视情况而定。