编码相关概念之一

2021-12-08  本文已影响0人  喏喏2021

1.ASCII码

2.UTF-8编码

3. URL编码

import java.net.URLEncoder;
URLEncoder.encode("你好", StandardCharsets.UTF_8); //%E4%BD%A0%E5%A5%BD

“你好”,经编码后,会看到每两个字符一起,前面都有一个%,这里我们可以看到,“你好”都使用了3字节来表示,
刚好可以验证一个前面的utf-8编码,“你”的3字节表示为E4,BD,A0,解析为二进制为11100100 10111101 10100000,
可以看到首字节前面为3个1,带1个0,后面两个字节都以10开头,没毛病。

import java.net.URLDecoder;
URLDecoder.decode("%E4%BD%A0%E5%A5%BD", StandardCharsets.UTF_8); //你好

4. BASE64编码

import java.util.Base64;
String encoder1 = Base64.getEncoder().encodeToString("abc".getBytes()); //YWJj,这里3字节*8位=24位,24位/6位=4个字符
new String(Base64.getDecoder().decode(encoder1)); //abc 可以正常还原出原来的字符串
上一篇 下一篇

猜你喜欢

热点阅读