Java8 - base64编码

Java8 - base64编码 首页 / Java入门教程 / Java8 - base64编码

在Java 8中,Base64编码已经成为Java类库的标准。Java8现在有用于Base64编码的内置编码器和解码器。在Java8中,无涯教程可以使用三种类型的base64编码。

  • Simple     - 输出被映射到一组字符A-Za-z0-9+/,编码不添加任何行标,输出的解码仅支持A-Za-z0-9+/。

  • URL         - 输出映射到一组字符A-Za-z0-9+_,输出是URL和文件。

  • MIME     - 输出隐射到MIME友好格式。输出每行不超过76字符,并且使用'\r'并跟随'\n'作为分割。编码输出最后没有行分割。

Base64 类

Sr.No.Nested class & Remark
1

static class Base64.Decoder

此类实现了一个解码器,用于使用RFC 4648和RFC 2045中指定的Base64编码方案对字节数据进行解码。

2

static class Base64.Encoder

此类实现了一个编码器,用于使用RFC 4648和RFC 2045中指定的Base64编码方案对字节数据进行编码。

Base64 方法

Sr.No.Method Name & Remark
1

static Base64.Decoder getDecoder()

返回使用基本类型Base64编码方案进行解码的Base64解码器。

2

static Base64.Encoder getEncoder()

返回使用基本类型Base64编码方案进行编码的Base64编码器。

3

static Base64.Decoder getMimeDecoder()

返回使用MIME类型Base64解码方案进行解码的Base64解码器。

4

static Base64.Encoder getMimeEncoder()

返回使用MIME类型Base64编码方案进行编码的Base64编码器。

5

static Base64.Encoder getMimeEncoder(int lineLength,byte[]lineSeparator)

无涯教程网

返回Base64编码器,该编码器使用具有指定行长和行分隔符的MIME类型Base64编码方案进行编码。

6

static Base64.Decoder getUrlDecoder()

返回一个Base64解码器,该解码器使用URL和文件名安全类型Base64编码方案进行解码。

7

static Base64.Encoder getUrlEncoder()

返回Base64编码器,该编码器使用URL和文件名安全类型Base64编码方案进行编码。

base64 示例

使用您在C:/>Java中选择的任何编辑器创建以下Java程序。

Java8Tester.java

import java.util.Base64;
import java.util.UUID;
import java.io.UnsupportedEncodingException;

public class HelloWorld {

   public static void main(String args[]) {

      try {
		
         //编码使用基本编码器
         String base64encodedString=Base64.getEncoder().encodeToString(
            "LearnFk?java8".getBytes("utf-8"));
         System.out.println("Base64 Encoded String (Basic) :" + base64encodedString);
		
         //解码
         byte[] base64decodedBytes=Base64.getDecoder().decode(base64encodedString);
		
         System.out.println("Original String: " + new String(base64decodedBytes, "utf-8"));
         base64encodedString=Base64.getUrlEncoder().encodeToString(
            "LearnFk?java8".getBytes("utf-8"));
         System.out.println("Base64 Encoded String (URL) :" + base64encodedString);
		
         StringBuilder stringBuilder=new StringBuilder();
		
         for (int i=0; i < 10; ++i) {
            stringBuilder.append(UUID.randomUUID().toString());
         }
		
         byte[] mimeBytes=stringBuilder.toString().getBytes("utf-8");
         String mimeEncodedString=Base64.getMimeEncoder().encodeToString(mimeBytes);
         System.out.println("Base64 Encoded String (MIME) :" + mimeEncodedString);

      } catch(UnsupportedEncodingException e) {
         System.out.println("Error :" + e.getMessage());
      }
   }
}

使用javac编译器编译类,如下所示-

C:\JAVA>javac Java8Tester.java

现在运行Java8Tester,如下所示-

C:\JAVA>java Java8Tester

它应该生成以下输出-

链接:https://www.learnfk.comhttps://www.learnfk.com/java/java8-base64.html

来源:LearnFk无涯教程网

Base64 Encoded String (Basic) :VHV0b3JpYWxzUG9pbnQ/amF2YTg=
Original String: LearnFk?java8
Base64 Encoded String (URL) :VHV0b3JpYWxzUG9pbnQ_amF2YTg=
Base64 Encoded String (MIME) :YmU3NWY2ODktNGM5YS00ODlmLWI2MTUtZTVkOTk2YzQ1Njk1Y2EwZTg2OTEtMmRiZC00YTQ1LWJl
NTctMTI1MWUwMTk0ZWQyNDE0NDAwYjgtYTYxOS00NDY5LTllYTctNjc1YzE3YWJhZTk1MTQ2MDQz
NDItOTAyOC00ZWI0LThlOTYtZWU5YzcwNWQyYzVhMTQxMWRjYTMtY2MwNi00MzU0LTg0MTgtNGQ1
MDkwYjdiMzg2ZTY0OWU5MmUtZmNkYS00YWEwLTg0MjQtYThiOTQxNDQ2YzhhNTVhYWExZjItNjU2
Mi00YmM4LTk2ZGYtMDE4YmY5ZDZhMjkwMzM3MWUzNDMtMmQ3MS00MDczLWI0Y2UtMTQxODE0MGU5
YjdmYTVlODUxYzItN2NmOS00N2UyLWIyODQtMThlMWVkYTY4M2Q1YjE3YTMyYmItZjllMS00MTFk
LWJiM2UtM2JhYzUxYzI5OWI4

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

人工智能基础课 -〔王天一〕

DDD实战课 -〔欧创新〕

说透敏捷 -〔宋宁〕

Web安全攻防实战 -〔王昊天〕

手机摄影 -〔@随你们去〕

Python自动化办公实战课 -〔尹会生〕

大厂广告产品心法 -〔郭谊〕

手把手带你搭建推荐系统 -〔黄鸿波〕

结构沟通力 -〔李忠秋〕

好记忆不如烂笔头。留下您的足迹吧 :)