java 图片转64base 编码

图片使用base64位存储的利弊

优势:

  • 减少http请求
  • 模块封装

弊端

  • base64编码的长度有些长(base64一般会比原图要大一些)
  • 获取修改比较麻烦

使用场景

  • 图片很少或不会更新
  • 图片实际尺寸很小
  • 图片在网站多次使用

图片转64base 编码

import cn.hutool.http.HttpUtil;
import org.apache.commons.codec.binary.Base64;

import java.io.ByteArrayOutputStream;
public class ImgTest{
	    public static void main(String[] args){
        //图片路径
        String imgUrl = "https://dss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=150890495,3123770572&fm=26&gp=0.jpg";
        //创建输出流
        ByteArrayOutputStream os = new ByteArrayOutputStream();
        //下载图片 HttpUtil是hutool包里面的
        HttpUtil.download(imgUrl, os, true);
        //转码
        String base64String = Base64.encodeBase64String(os.toByteArray());
        //输出
        System.out.println(base64String);

    	}
}

获取base64码后去网站http://tool.chinaz.com/tools/imgtobase/校验下,是否正确

填入:data:image/jpg;base64,加base64码
点击Base64还原图片

java 图片转64base 编码_第1张图片

你可能感兴趣的:(File)