Class PercentCodec

java.lang.Object
org.miaixz.bus.core.codec.PercentCodec
All Implemented Interfaces:
Serializable, Encoder<byte[],byte[]>

public class PercentCodec extends Object implements Encoder<byte[],byte[]>, Serializable
百分号编码(Percent-encoding), 也称作URL编码(URL encoding)。 百分号编码可用于URI的编码,也可以用于"application/x-www-form-urlencoded"的MIME准备数据。

百分号编码会对 URI 中不允许出现的字符或者其他特殊情况的允许的字符进行编码,对于被编码的字符,最终会转为以百分号"%“开头,后面跟着两位16进制数值的形式。 举个例,空格符(SP)是不允许的字符,在 ASCII 码对应的二进制值是"00100000”,最终转为"%20"。

对于不同场景应遵循不同规范:

  • URI:遵循RFC 3986保留字规范
  • application/x-www-form-urlencoded,遵循W3C HTML Form content types规范,如空格须转+
Since:
Java 17+
Author:
Kimi Liu
See Also: