Java 处理图片与base64 编码的相互转换的示例
今天项目优化了一下上传头像的功能。采用imagecropper插件完成裁剪图片的效果。
这个插件裁剪完的图片都是base64加密的字符串,上传头像也就涉及到了如何把加密的字符串转换成图片的问题。
以下是代码:
/**
*@Description:将base64编码字符串转换为图片
*@Author:
*@CreateTime:
*@paramimgStrbase64编码字符串
*@parampath图片路径-具体到文件
*@return
*/
publicstaticbooleangenerateImage(StringimgStr,Stringpath){
if(imgStr==null)
returnfalse;
BASE64Decoderdecoder=newBASE64Decoder();
try{
//解密
byte[]b=decoder.decodeBuffer(imgStr);
//处理数据
for(inti=0;i
解密自然也有加密。以下是加密:
/**
*@Description:根据图片地址转换为base64编码字符串
*@Author:
*@CreateTime:
*@return
*/
publicstaticStringgetImageStr(StringimgFile){
InputStreaminputStream=null;
byte[]data=null;
try{
inputStream=newFileInputStream(imgFile);
data=newbyte[inputStream.available()];
inputStream.read(data);
inputStream.close();
}catch(IOExceptione){
e.printStackTrace();
}
//加密
BASE64Encoderencoder=newBASE64Encoder();
returnencoder.encode(data);
}
再贴一个测试的main函数
/**
*示例
*/
publicstaticvoidmain(String[]args){
StringstrImg=getImageStr("F:/86619-106.jpg");
System.out.println(strImg);
generateImage(strImg,"F:/86619-107.jpg");
}
好了,打完收工。
不过需要注意的是,一般插件返回的base64编码的字符串都是有一个前缀的。
"data:image/jpeg;base64,"解码之前这个得去掉。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短