老师,关于ISO8859-1的问题
来源:4-1 聊聊HTTP协议中的编码和解码(上)

姜珮瑶
2022-11-19
老师,您在“聊聊HTTP协议中的编码和解码(上)”这节课的12分24秒处提到,原话是:“因为ISO-8859-1编码范围使用了单字节内的所有空间,在支持ISO-8859-1的系统中传输和存储其他任何编码的字节流都不会被抛弃。换言之,把其他任何编码当作ISO-8859-1来进行解码的时候,看待都没有问题,都能解开。”
我的问题是为什么把其他任何编码当作ISO-8859-1来进行解码的时候,看待都没有问题,都能解开??难道不会出现乱码吗?
1回答
-
风落几番
2022-11-30
我先引用维基百科的一段:
ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,0xA0-0xFF之间是文字符号。
ISO-8859-1收录的字符除ASCII收录的字符外,还包括 西欧语言、希腊语、泰语、阿拉伯语、希伯来语对应的文字符号。欧元符号出现的比较晚,没有被收录在ISO-8859-1当中。
因为ISO-8859-1编码范围使用了单字节内的所有空间,在支持ISO-8859-1的系统中传输和存储其他任何编码的字节流都不会被抛弃。换言之,把其他任何编码的字节流当作ISO-8859-1编码看待都没有问题。
当然,这里指的是单字节编码,意思就是所有的单字节编码都可以当作ISO-8859-1看待,他的编码范围最大。但是如果你说会不会乱码,当然也会,因为不是所有的字符都能够被单字节编码的。比如中文,他是双字节编码的。
总体来说,你可以这么理解,所有可以用ASCII编码的字符都可以被当作ISO-8859-1看待。
00
相似问题