当前位置: 首页 > 编程笔记 >

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

连乐
2023-03-14
本文向大家介绍Java实现文件和base64流的相互转换功能示例,包括了Java实现文件和base64流的相互转换功能示例的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了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 block
e.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程序设计有所帮助。

 类似资料:
  • 本文向大家介绍PHP实现的数组和XML文件相互转换功能示例,包括了PHP实现的数组和XML文件相互转换功能示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP实现的数组和XML文件相互转换功能。分享给大家供大家参考,具体如下: 最近搞微信支付,微信服务器返回的都是XML文件,所以需要转换成数组,才会便于操作,好了话不多说,直接上代码: 1. XML转数组 用法示例: 运行结果: 2.

  • 本文向大家介绍C#实现JSON和对象之间互相转换功能示例,包括了C#实现JSON和对象之间互相转换功能示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现JSON和对象之间互相转换功能。分享给大家供大家参考,具体如下: 1.首先是声明用户信息对象,DataContract修饰类,表示可以被解析成JSON,DataMember修饰属性,Order表示 解析的顺序,另外Lover是数组

  • 本文向大家介绍Java实现的时间戳与date对象相互转换功能示例,包括了Java实现的时间戳与date对象相互转换功能示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java实现的时间戳与date对象相互转换功能。分享给大家供大家参考,具体如下: 一.日期转换为时间戳 二.时间戳转换为date 型 系统获取时间戳 : PS:这里再为大家推荐几款时间及日期相关工具供大家参考使用: Uni

  • 本文向大家介绍tensor和numpy的互相转换的实现示例,包括了tensor和numpy的互相转换的实现示例的使用技巧和注意事项,需要的朋友参考一下 要对tensor进行操作,需要先启动一个Session,否则,我们无法对一个tensor比如一个tensor常量重新赋值或是做一些判断操作,所以如果将它转化为numpy数组就好处理了。下面一个小程序讲述了将tensor转化为numpy数组,以及又重

  • 本文向大家介绍Python实现字符串与数组相互转换功能示例,包括了Python实现字符串与数组相互转换功能示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python实现字符串与数组相互转换功能。分享给大家供大家参考,具体如下: 字符串转数组 运行结果: 数组转字符串 运行结果: 更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数组操作技巧总结》、《Python字

  • 本文向大家介绍Java Base64位编码与String字符串的相互转换,Base64与Bitmap的相互转换实例代码,包括了Java Base64位编码与String字符串的相互转换,Base64与Bitmap的相互转换实例代码的使用技巧和注意事项,需要的朋友参考一下 首先是网上大神给的类 然后是我经过2次封装的类,注释很清楚,拿过去直接用就行 以上所述是小编给大家介绍的Java Base64位