UrlDecoder 多次解码
UrlDecoder decode several times
是否有任何方法可以完全解码 String ?例如我有
monta%25C3%25B1a ,如果我使用 UrlDecoder.decode 方法一次:它 returns monta%C3%B1a 如果我再次解码,它最终 returns montaña (即完全解码的字符串)。Java 中是否有任何方法或库可以实现此结果?
monta[%25]C3[%25]B1a
monta % C3 % B1a which has a UTF-8 multi-byte sequence
monta ñ a
使用与编码时相同的字符集进行解码很重要。
显然它被 URL 编码了两次,首先是 UTF-8,然后 %
仍然编码了一次。
应该修复两次编码,否则会留下难以理解的补丁:
s = URLDecoder.decode(s, StandardCharsets.UTF_8);
s = URLDecoder.decode(s, StandardCharsets.UTF_8);
是否有任何方法可以完全解码 String ?例如我有
monta%25C3%25B1a ,如果我使用 UrlDecoder.decode 方法一次:它 returns monta%C3%B1a 如果我再次解码,它最终 returns montaña (即完全解码的字符串)。Java 中是否有任何方法或库可以实现此结果?
monta[%25]C3[%25]B1a
monta % C3 % B1a which has a UTF-8 multi-byte sequence
monta ñ a
使用与编码时相同的字符集进行解码很重要。
显然它被 URL 编码了两次,首先是 UTF-8,然后 %
仍然编码了一次。
应该修复两次编码,否则会留下难以理解的补丁:
s = URLDecoder.decode(s, StandardCharsets.UTF_8);
s = URLDecoder.decode(s, StandardCharsets.UTF_8);