或者这两个字符在Shift_JIS中根本不存在吗?
Shift_JIS字符编码方案中的前128个字符与ASCII匹配,但两个除外:0x5C是日元符号(¥
)而不是反斜杠,而0x7E是上划线(‾
)而不是波浪号。
虽然有很多关于¥
和‾
如何接管\
和~
的明确信息,但我无法找到关于\
和~
是否根本不做的明确陈述” t存在于Shift_JIS中,或者是否存在替代(可能为多字节)编码来处理这两个置换的ASCII字符。
[当我尝试使用\
编码~
或node-iconv时,会引发错误。
iconv-lite将¥
和\
都编码为0x5C,并且‾
和~
都编码为0x7E。解码时,iconv-lite当前(不幸的是)将0x5C解码为\
,将0x7E解码为~
,等待对错误报告的响应。
~
表示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)。