zoukankan      html  css  js  c++  java
  • java 图片转base64字符串、base64字符串转图片

    java 图片转base64字符串、base64字符串转图片

    1. 图片转base64字符串:

        /**
         * base64编码字符串转换为图片
         * @param imgStr base64编码字符串
         * @param path 图片路径
         * @return
         */
        public static boolean base64StrToImage(String imgStr, String path) {
            if (imgStr == null)
            return false;
            BASE64Decoder decoder = new BASE64Decoder();
            try {
                // 解密
                byte[] b = decoder.decodeBuffer(imgStr);
                // 处理数据
                for (int i = 0; i < b.length; ++i) {
                    if (b[i] < 0) {
                        b[i] += 256;
                    }
                }
                //文件夹不存在则自动创建
                File tempFile = new File(path);
                if (!tempFile.getParentFile().exists()) {
                    tempFile.getParentFile().mkdirs();
                }
                OutputStream out = new FileOutputStream(tempFile);
                out.write(b);
                out.flush();
                out.close();
                return true;
            } catch (Exception e) {
                return false;
            }
        }

    2. base64字符串转图片:

        /**
         * 图片转base64字符串
         * @param imgFile 图片路径
         * @return
         */
        public static String imageToBase64Str(String imgFile) {
            InputStream inputStream = null;
            byte[] data = null;
            try {
                inputStream = new FileInputStream(imgFile);
                data = new byte[inputStream.available()];
                inputStream.read(data);
                inputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            // 加密
            BASE64Encoder encoder = new BASE64Encoder();
            return encoder.encode(data);
        }

    3. 测试:

    public static void main(String[] args) {
            String base64Str = imageToBase64Str("D:/pic/001.jpg");
            System.out.println(base64Str);
            
            boolean b = base64StrToImage(base64Str, "D:/pic/temp/002.jpg");
            System.out.println(b);
        }

             

  • 相关阅读:
    day35—JavaScript操作元素(创建、删除)
    day34—JavaScript实现DOM操作
    day33—前端开发的模块化和组件化
    day32—CSS多列布局学习
    day31—CSS Reset 与页面居中布局
    JVM(18)之 Class文件
    JVM(17)之 准备-解析-初始化
    JVM(16)之 双亲委派模型
    JVM(15)之 类加载器
    JVM(14)之 类加载机制
  • 原文地址:https://www.cnblogs.com/hooly/p/8330433.html
Copyright © 2011-2022 走看看