zoukankan      html  css  js  c++  java
  • JAVA文件转换为Base64

    JAVA文件转换为Base64

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import sun.misc.BASE64Decoder;
    import sun.misc.BASE64Encoder;
    public class FileToBase64 {
        /**
        * <p>将文件转成base64 字符串</p>
        * @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);
        }
        /**
        * <p>将base64字符解码保存文件</p>
        * @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();
        }
        /**
        * <p>将base64字符保存文本文件</p>
        * @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("/Users/Crazy/Pictures/zyb2.jpg");
                System.out.println(base64Code);
                decoderBase64File(base64Code, "/Users/Crazy/Desktop/zyb.png");
                toFile(base64Code, "/Users/Crazy/Desktop/zyb.txt");
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
  • 相关阅读:
    记坑
    常用模板
    ACM-东北赛划水记
    jzoj 4178游戏
    JZOI 4163
    jzoj 4146踩气球
    jzoj 5589. 缩点
    jzoj 5588 %%%
    jzoj 5571 ffs
    BJOI 2017 Kakuro
  • 原文地址:https://www.cnblogs.com/rinack/p/9019161.html
Copyright © 2011-2022 走看看