Java java.util.Base64.Encoder
类提供的 withoutPadding()
方法返回一个 Base64.Encoder 实例,该实例与当前实例等效编码,不同的是前者不会在编码字节数据的末尾添加任何填充字符.
( Java > 8 )
方法原型
public Base64.Encoder withoutPadding()
该方法返回一个 Base64.Encoder 实例,该实例与当前实例等效编码,不同的是前者不会在编码字节数据的末尾添加任何填充字符。
原编码器实例的编码方案不受此调用的影响。返回的编码器实例应该用于非填充编码操作。
返回值
返回一个 Base64.Encoder 实例,该实例与当前实例等效编码,不同的是前者不会在编码字节数据的末尾添加任何填充字符
范例
下面的代码简单的演示了普通的 Base64.Encoder
实例和 withoutPadding()
返回的实例有和不同
Base64Tester.java
import java.util.Base64;
import java.nio.ByteBuffer;
import java.io.UnsupportedEncodingException;
public class Base64Tester {
public static void main(String args[]) {
try {
Base64.Encoder encoder = Base64.getEncoder();
Base64.Encoder nopadding_encoder = encoder.withoutPadding();
String raw = "Java 8 Base64 编码解码 - Java8新特性 - 大白菜博客";
String encodedString = encoder.encodeToString(raw.getBytes("utf-8"));
System.out.println(encodedString);
String encodedString2 = nopadding_encoder.encodeToString(raw.getBytes("utf-8"));
System.out.println(encodedString2);
} catch(UnsupportedEncodingException e) {
System.out.println("异常:" + e.getMessage());
}
}
}
运行以上代码,输出结果如下
[dabaicai@www.cmsblogs.cn helloworld]$ javac Base64Tester.java && java Base64Tester
SmF2YSA4IEJhc2U2NCDnvJbnoIHop6PnoIEgLSBKYXZhOOaWsOeJueaApyAtIOeugOWNleaVmeeoiw==
SmF2YSA4IEJhc2U2NCDnvJbnoIHop6PnoIEgLSBKYXZhOOaWsOeJueaApyAtIOeugOWNleaVmeeoiw
差别就是 withoutPadding()
并不会自动填充 =
号
最新评论
徒弟可以A师傅,学生可以A老师,为什么外包不能A正式,我觉得很正常。异性相吸这是宇宙真理
PHP天下第一(狗头叼花)
第一个不需要关注公主号直接给激活码的帖子!
客户端超时断开后,服务端如果没有设置超时机制,那也会继续等待处理,万一这期间有消息到了,那不是就接受到消息处理了,但是也没有办法返回到客户端,导致消息丢失。
企业级GO项目开发实战 Kubernetes权威指南 第六版
https://pan.baidu.com/s/1q3bnTncIACKoTZFxvx7BQw?pwd=ii7n
RabbitMQ精讲,项目驱动落地,分布式事务拔高 有吗?
Spring Cloud Alibaba 微服务架构实战 https://pan.baidu.com/s/1jF5voFRoeF0lYAzAPBWSbw?pwd=chqk