Shift_JIS中的反斜杠和波浪号字符是否正确编码?

问题描述 投票:2回答:1

或者这两个字符在Shift_JIS中根本不存在吗?

Shift_JIS字符编码方案中的前128个字符与ASCII匹配,但两个除外:0x5C是日元符号(¥)而不是反斜杠,而0x7E是上划线()而不是波浪号。

虽然有很多关于¥如何接管\~的明确信息,但我无法找到关于\~是否根本不做的明确陈述” t存在于Shift_JIS中,或者是否存在替代(可能为多字节)编码来处理这两个置换的ASCII字符。

[当我尝试使用\编码~node-iconv时,会引发错误。

iconv-lite¥\都编码为0x5C,并且~都编码为0x7E。解码时,iconv-lite当前(不幸的是)将0x5C解码为\,将0x7E解码为~,等待对错误报告的响应。

character-encoding iconv shift-jis
1个回答
2
投票
字符编码Shift_JIS将JIS X 0201用于半角字符集,并将JIS X 0208用于全角字符集。\和~表示ISO / IEC 8859-1(Latin-1)中的半角反斜杠和波浪号,对吗? JIS X 0201(半角字符集)不包含这些字符(请参见https://en.wikipedia.org/wiki/JIS_X_0201)。

所以答案是\~在Shift_JIS中都不存在。

FYR,JIS X 0208包含全角反斜杠(FULLWIDTH REVERSE SOLIDUS,Unicode中的U + FF3C)。 JIS X 0208不包含全角波浪号,但是Windows中的Shift_JIS等效项(Microsoft代码页932)包含全角波浪号(FULLWIDTH TILDE,Unicode中的U + FF5E)。

© www.soinside.com 2019 - 2024. All rights reserved.