能力值:
( LV2,RANK:10 )
|
-
-
2 楼
用十六进制工具打开仍然看到的是联通两个字,可记事本打开就不是了
C1 AA CD A8
|
能力值:
( LV4,RANK:50 )
|
-
-
3 楼
已经是历史的东西
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
是很久了,可我就一直没有闹明白为什么会这样,在记事本中打一段文字中出现联通两个字又能正常显示
|
能力值:
( LV4,RANK:50 )
|
-
-
5 楼
这应该是记事本的BUG吧
|
能力值:
(RANK:1010 )
|
-
-
6 楼
我记得论坛中以前有这个帖子
|
能力值:
( LV9,RANK:530 )
|
-
-
7 楼
晕啊 温到死
|
能力值:
( LV4,RANK:50 )
|
-
-
8 楼
记事本有自动识别unicode等编码的功能,
字符数过少就可能出现编码识别bug.
这里的"联通"被记事本误识别为UTF-8编码了.
|
能力值:
( LV7,RANK:100 )
|
-
-
9 楼
这只是微软的又一个小bug,属于记事本程序的编码问题,当文档中所有字符都在
C0≤AA≤DF80≤BB≤BF这个范围的时候,记事本程序都无法确认文档的格式,而“联通”
就是C1AACDA8,恰好好在上面的范围内,所以不能正常显示
输入5个“联”,保存打开后什么也显不出来
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
长见识了.....
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
一种解释:
记事本保存的时候,默认使用ansi编码
但是用ansi编码呢,联通这两个字的开头正好是:fffe..... 这样的,于是再打开呢,他就以为是utf-8编码了,但是按照utf-8来解码呢,却造成乱码了
以下是“联通”二字在不同编码下的16进制代码:
FF FE 54 80 1A 90 (Unicode)
FE FF 80 54 90 1A (Big Unicode)
FF FE 54 80 1A 90 (UTF-8)
FF FE 6A 00 68 03 (ANSI)
可以看出来,Unicode和UTF-8编码下,联通二字的编码是一样的,而Big Unicode是和Little Unicode(简称Unicode)正好相反的编码方式,一般Intel体系的计算机用Little Unicode编码效率较高。而文件头FF FE和FE FF则被微软用来作为区分文件是Little Unicode还是Big Unicode的标志。同时呢,由于UTF-8也是缘于Unicode编码方式的,微软就在UTF-8编码的文件前面也加上了FF FE用来作为标志。
可是这样一来,用ANSI编码保存的文件就出问题了,因为联通二字的ANSI编码正好是以FFFE开头的,这样以ANSI编码保存以后再次打开,记事本首先检测到FFFE,就认为是UTF-8编码了,于是按照UTF-8编码打开以后就会显示为乱码。
利用这个原理,大家可以试试,找到以ANSI编码保存时开头为FFFE的其他文字,同样可以实现和 联通二字在记事本中造成的bug一样的效果
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
果然,真是长见识了
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
最初由 nettao 发布 一种解释:
记事本保存的时候,默认使用ansi编码 但是用ansi编码呢,联通这两个字的开头正好是:fffe..... 这样的,于是再打开呢,他就以为是utf-8编码了,但是按照utf-8来解码呢,却造成乱码了
........
窃以为有误人子弟之嫌。
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
有这种事?真奇怪
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
又学到东西了
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
最初由 auser 发布
窃以为有误人子弟之嫌。
为什么这样说呢?哪里有错误?
|
|
|