Java处理图片实现base64编码转换
前言
环境:使用这个代码前:请确保你的JDk是JAVA8及其以上
开发测试地址:http://imgbase64.duoshitong.com/可以查看是否执行成功
注意事项
一般插件返回的base64编码的字符串都是有一个前缀的。"data:image/jpeg;base64,"解码之前这个得去掉。
Code
MainTest
/** *示例 *@throwsUnsupportedEncodingException *@throwsFileNotFoundException */ @SuppressWarnings("resource") publicstaticvoidmain(String[]args)throwsUnsupportedEncodingException,FileNotFoundException{ StringstrImg=getImageStr("Z:\\水印\\2.bmp"); System.out.println(strImg); Filefile=newFile("z://1.txt"); FileOutputStreamfos=newFileOutputStream(file); OutputStreamWriterosw=newOutputStreamWriter(fos,"UTF-8"); try{ osw.write(strImg); }catch(IOExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } //generateImage(strImg,"Z:\\水印\\444.bmp"); }
加密:
** *@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(); } //加密 Encoderencoder=Base64.getEncoder(); returnencoder.encodeToString(data); }
解密:
/** *@Description:将base64编码字符串转换为图片 *@Author: *@CreateTime: *@paramimgStrbase64编码字符串 *@parampath图片路径-具体到文件 *@return */ publicstaticbooleangenerateImage(StringimgStr,Stringpath){ if(imgStr==null) returnfalse; //解密 try{ Decoderdecoder=Base64.getDecoder(); byte[]b=decoder.decode(imgStr); //处理数据 for(inti=0;i以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。