基于Java实现文件和base64字符串转换
这篇文章主要介绍了基于Java实现文件和base64字符串转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
项目中遇到需要将图片转成base64编码的字符串的需求,但是,考虑到扩展性,写了一个可以转换任务类型文件的方法。需要引入的包:
commons-codec commons-codec 1.13
源码如下:
importsun.misc.BASE64Decoder; importsun.misc.BASE64Encoder; importjava.io.*; publicclassBase64FileUtil{ privatestaticStringtargetFilePath="E:\\base2Img\\target\\test.txt"; publicstaticvoidmain(String[]args)throwsException{ StringfileStr=getFileStr("E:\\base2Img\\bigtest.txt"); System.out.println("fileStr==="+fileStr); System.out.println(generateFile(fileStr,targetFilePath)); System.out.println("end"); } /** *文件转化成base64字符串 *将文件转化为字节数组字符串,并对其进行Base64编码处理 */ publicstaticStringgetFileStr(StringfilePath){ InputStreamin=null; byte[]data=null; //读取文件字节数组 try{ in=newFileInputStream(filePath); data=newbyte[in.available()]; in.read(data); in.close(); }catch(IOExceptione){ e.printStackTrace(); }finally{ try{ in.close(); }catch(IOExceptione){ e.printStackTrace(); } } //对字节数组Base64编码 BASE64Encoderencoder=newBASE64Encoder(); //返回Base64编码过的字节数组字符串 returnencoder.encode(data); } /** *base64字符串转化成文件,可以是JPEG、PNG、TXT和AVI等等 * *@parambase64FileStr *@paramfilePath *@return *@throwsException */ publicstaticbooleangenerateFile(Stringbase64FileStr,StringfilePath)throwsException{ //数据为空 if(base64FileStr==null){ System.out.println("不行,oops!"); returnfalse; } BASE64Decoderdecoder=newBASE64Decoder(); //Base64解码,对字节数组字符串进行Base64解码并生成文件 byte[]byt=decoder.decodeBuffer(base64FileStr); for(inti=0,len=byt.length;i以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。