gpt4 book ai didi

由 Actionscript 转义的 Java 解码字符串

转载 作者:行者123 更新时间:2023-12-03 18:20:43 25 4
gpt4 key购买 nike

我有一个环境,其中字符串由 Actionscript escape() 函数进行百分比编码,然后传递给 Java 进行解码。

例如,我有一个测试字符串 "m é"
它被传递给输出 "m%20%E9"
的 Actionscript escape()当我尝试用 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

实际上 é 是 U+00E9 .低 255 个字符中的编码 1:1 映射到 Unicode 是 ISO-8859-1 .

所以正确的解码方式是这样的:

URLDecoder.decode("m%20%E9", "ISO-8859-1")

关于由 Actionscript 转义的 Java 解码字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6914785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com