首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

为什么有些繁体字用 gbk 编码 UrlEncode 和 gbk 编码表不一致?

  •  
  •   fqxufo · 141 天前 · 899 次点击
    这是一个创建于 141 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如繁体字"華",在经过 UrlEncode ( http://www.atool9.com/urlencode.php )之后:变成了“%C8A ”,但是查询 gbk 编码表( http://ff.163.com/newflyff/gbk-list/ ),对应的却是“ C841"呢?
    6 回复  |  直到 2019-06-26 08:54:38 +08:00
        1
    weyou   141 天前 via Android   ♥ 1
    A == %41
        2
    msg7086   141 天前
    %C8 %41
    %C8 A
        3
    fqxufo   140 天前 via iPhone
    @msg7086 能否再解释清楚一点呢?如果是二次 urlencode,为什么第一个百分号不会被继续转译?非常感谢
        4
    msg7086   140 天前
    @fqxufo 没有二次转译啊。
    華 是 0xC841
    0xC8 转译成%C8
    0x41 就是 A,可以转译成%41,也可以不转译,保留原样 A。
        5
    msg7086   140 天前   ♥ 1
    比如 荙 这个字,是 0xC751。
    0xC7 转译成%C7
    0x51 是 Q,也可以转译成%51

    所以%C7Q 或者%C7%51 都可以。
        6
    fqxufo   140 天前
    @msg7086 非常感谢您的回答。还是我太蠢,一直在纠结二次转译上面,没有意识到 0x41 就是 ascii 里 A 的码位。

    所以我现在想使用 TextDecoder ( https://developer.mozilla.org/en-US/docs/Web/API/TextDecoder )转码 gbk,直接先把所有两位字符转换为对应的数字,然后把整体 Uint8Array,最后用 gbk 编码方式的 TextDecoder 处理就可以了吧
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   937 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 21ms · UTC 21:09 · PVG 05:09 · LAX 13:09 · JFK 16:09
    ♥ Do have faith in what you're doing.