Actionscript转义的Java解码字符串
在我的环境中,字符串由ActionscriptActionscript转义的Java解码字符串,java,actionscript,escaping,decode,urldecode,Java,Actionscript,Escaping,Decode,Urldecode,在我的环境中,字符串由Actionscriptescape()函数进行百分比编码,然后传递给Java进行解码 例如,我有一个测试字符串“mé” 它被传递给Actionscript escape(),后者输出“m%20%E9” 当我尝试用Java解码时: URLDecoder.decode("m%20%E9", "UTF-8") 结果是: "m ?" %E9似乎是“é”字符的unicode点,但Java解码并不完全理解它。 有没有办法在Java中解码Actionscript escape()编
escape()
函数进行百分比编码,然后传递给Java进行解码
例如,我有一个测试字符串“mé”
它被传递给Actionscript escape(),后者输出
“m%20%E9”
当我尝试用Java解码时:
URLDecoder.decode("m%20%E9", "UTF-8")
结果是:
"m ?"
%E9似乎是“é”字符的unicode点,但Java解码并不完全理解它。有没有办法在Java中解码Actionscript escape()编码的字符串? 这些函数使用什么转义格式,因为它们看起来不同 提前感谢您的帮助,
保罗
m%20%E9
是不是UTF-8。这很容易看出,因为ASCII范围(即0-127)之外的任何字符都需要UTF-8中至少2个字节。因为%20
是空格,所以只剩下%E9
作为空格
事实上是这样。下面255个字符中的编码将1:1映射为Unicode
所以正确的解码方法是:
URLDecoder.decode("m%20%E9", "ISO-8859-1")
你好,Joachim,谢谢你的帮助,但是你的代码为我生成了相同的结果“m?”:(@Paul:对我来说,它生成了“mé”,正如预期的那样。你是对的,我尝试了一个新的应用程序,它工作得很好。我的设置一定有问题。再次感谢!