永发信息网

ANSI编码和UTF-8有什么区别,在编程的时候讲会因为编码格式的不同导致程序无法运行

答案:1  悬赏:0  手机版
解决时间 2021-03-28 11:24
  • 提问者网友:椧運幽默
  • 2021-03-27 15:56
ANSI编码和UTF-8有什么区别,在编程的时候讲会因为编码格式的不同导致程序无法运行
最佳答案
  • 五星知识达人网友:胯下狙击手
  • 2021-03-27 16:16
ANSI编码一般指Windows-1252编码,是一个256个字符的字集的编码,每个字符由一个字节表示。其中前128个字符(00-7F)和ASCII的7bits编码一样,后128个字符中有一些欧洲国家用的有重音的字符。ANSI编码在不同语言的Windows下也指此语言下的Windows编码页,比如中文环境下指Windows-936(也就是GB2312),日文环境下是Windows-932(JIS)编码等等,也是前128个字符(00-7F)和ASCII的7bits编码一样,其他字符则由2个字节表示。

UTF-8是针对Unicode的可变长度字符编码,一个字符可以由1到4个字节表示,其中由一个字节表示的字符和ASCII的7bits编码一样,而包括中文在内的大部分字符则由3个字节表示。

所以如果文本里只有ASCII的7bits编码的那些,这两种编码是互相兼容没有区别的,但是对其他字符,编码就不同了,而且Windows-1252编码无法表达除了256个字符外的比如中文字符,其他的ANSI编码如Windows-936也只能表示一部分Unicode中的字符。编码格式的不同导致程序无法运行很容易理解,因为同样的字集在不同的编码方式下表达的字符是不同的或者是不能被表示的,除非是ASCII的7bits编码中的那些字符。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯