Java实现文件和base64流的相互转换功能示例

时间:2021-05-20

本文实例讲述了Java实现文件和base64流的相互转换功能。分享给大家供大家参考,具体如下:

import java.io.FileInputStream;import java.io.FileOutputStream;import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;/** * 文件与base64的互相转换操作 */public class testFile {public static void main(String[] args) {testFile t = new testFile();try {String ret = t.encodeBase64File("d://IE和火狐js或css差异.docx");System.err.println(ret);t.decoderBase64File(ret, "d://ghsTest/retFile.docx", "d://ghsTest/");} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}/** * 将文件转成base64 字符串 * * @param path文件路径 * @return * * @throws Exception */ public static String encodeBase64File(String path) throws Exception { File file = new File(path); FileInputStream inputFile = new FileInputStream(file); byte[] buffer = new byte[(int) file.length()]; inputFile.read(buffer); inputFile.close(); return new BASE64Encoder().encode(buffer); } /** * 将base64字符解码保存文件 * * @param base64Code * @param targetPath * @throws Exception */ public static void decoderBase64File(String base64Code, String targetPath,String catalogue) throws Exception { File file = new File(catalogue); if(file.exists()==false){ file.mkdirs(); } byte[] buffer = new BASE64Decoder().decodeBuffer(base64Code); FileOutputStream out = new FileOutputStream(targetPath); out.write(buffer); out.close(); }}

PS:这里再推荐几款加密解密相关在线工具供大家参考使用:

线编码转换工具(utf-8/utf-32/Punycode/Base64):
http://tools.jb51.net/transcoding/decode_encode_tool

BASE64编码解码工具:
http://tools.jb51.net/transcoding/base64

图片转换为Base64编码在线工具:
http://tools.jb51.net/transcoding/img2base64

在线MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha

更多关于java相关内容感兴趣的读者可查看本站专题:《Java数学运算技巧总结》、《Java数据结构与算法教程》、《Java字符与字符串操作技巧总结》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章