前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java Base64转换,Java Base64工具类

Java Base64转换,Java Base64工具类

作者头像
用户9131103
发布2023-07-17 19:51:25
4580
发布2023-07-17 19:51:25
举报
文章被收录于专栏:工作经验工作经验

Base64转换工具类:

1、使用JDK6自带的(不建议使用)

代码语言:javascript
复制
    import sun.misc.BASE64Encoder;   
    import sun.misc.BASE64Decoder;  
    //编码  
    BASE64Encoder encoder = new BASE64Encoder();    
    String imageString = encoder.encode(byteArray);//转换成Base64形式  
      
    //解码  
    BASE64Decoder decoder = new BASE64Decoder();    
    byte[] imageByteArray = decoder.decodeBuffer(imageString);    

但这个性能一般,而且转换出来的base64字符串会有换行符,可能还需要替换换行符,避免在某些场景因为分行导致出错 2、使用Jdk8的Base64工具类(优先考虑使用)

代码语言:javascript
复制
    java.util.Base64  
      
    //编码  
    Base64.getEncoder().encodeToString("aaaaaaaa".getBytes("utf-8"));  
      
    //解码  
    Base64.getDecoder().decode("c29tZSBzdHJpbmc=");  
      
    //URL编码  
    //URL对反斜线“/”有特殊的意义,因此URL编码需要替换掉它,使用下划线替换  
    Base64.getUrlEncoder().encodeToString("test.do?abcd".getBytes("utf-8"));  
      
    //MIME编码  
    //每一行输出不超过76个字符,而且每行以“\r\n”符结束  
    Base64.getMimeEncoder().encodeToString("aaaaaaaa".getBytes("utf-8"));  
      
    //流文件编码、解码  
    Base64.getEncoder().wrap(outputStream);   
    Base64.getDecoder().wrap(inputStream);  

性能超好,如果已经使用JDK8,直接使用这个。 3、使用Spring提供的Base64Utils类

代码语言:javascript
复制
org.springframework.util.Base64Utils;  

4、使用apache中的Base64

代码语言:javascript
复制
org.apache.commons.codec.binary.Base64  

5、使用第三方工具类(附件有相应的jar包)

代码语言:javascript
复制
   net.iharder.Base64;  
     
   Base64.encodeBytes(bytes);  
     
   //直接从文件路径获取base64编码  
   Base64.encodeFromFile("c:/938dcfd836be4e15a225110dc77769d0.jpg");  

文件转成字节

代码语言:javascript
复制
    File file = new File("c:/5110dc77769d0.jpg");  
    InputStream inputStream = new FileInputStream(file);  
    byte[] bytes = new byte[inputStream.available()];  
    inputStream.read(bytes);  
    inputStream.close();  
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023年04月04日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档