我对某些 URL 的 UTF-8 解码感到疯狂。我正在使用
URLDecoder.decode (java.net.URLDecoder)
解码一些带有特殊字符的URL。正如您在下面看到的,对于 URL 中的某些位置名称,解码可以工作,而对于某些位置名称则不能...
biha%C4%87 --> biha? (WRONG)
d%C3%A9partement+morbihan --> département morbihan (CORRECT)
gespanschaft+me%C4%91imurje --> gespanschaft me?imurje (WRONG)
hajd%C3%BA+bihar --> hajdú bihar (CORRECT)
有什么想法吗?非常感谢! 汤姆
最佳答案
使用URLDecoder.decode(url, "UTF-8")
,您的所有网址都会正确解码。
然而,情况 1 和 3 的解码字符串包含代码点 263 和 273 的字符。
您很可能将这些字符串打印到控制台,该控制台无法打印代码点 > 255 的字符,并用 ?
替换这些字符。
关于java - UTF-8解码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32785033/