java之文件与base64字符之间的互转工具类

来源:互联网 发布:淘宝话费代理 编辑:程序博客网 时间:2024/06/05 01:20
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream;import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder;public class FileBase64ConvertUitl { /**  * 将文件转成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)    throws Exception {   byte[] buffer = new BASE64Decoder().decodeBuffer(base64Code);   FileOutputStream out = new FileOutputStream(targetPath);   out.write(buffer);   out.close(); } /**  * 将base64字符保存文本文件  * @param base64Code  * @param targetPath  * @throws Exception  */ public static void toFile(String base64Code, String targetPath)    throws Exception {    byte[] buffer = base64Code.getBytes();    FileOutputStream out = new FileOutputStream(targetPath);    out.write(buffer);    out.close();  } public static void main(String[] args) {     try {        String base64Code = encodeBase64File("D:/0101-2011-qqqq.tif");        System.out.println(base64Code);        decoderBase64File(base64Code, "D:/2.tif");        toFile(base64Code, "D:\\three.txt");     } catch (Exception e) {        e.printStackTrace();     } }}

0 0
原创粉丝点击