樱花最早起源于哪里:关于“联通”和“移动”在电脑中打字的问题,很神奇,大家看一下

来源:百度文库 编辑:高校问答 时间:2024/05/07 02:11:44
如果你的电脑操作系统是win2000或winxp的话,那么:
1、在桌面上点右键,选择新建 - 文本文档;
2、打开“新建 文本文档“,录入“移动“两字后存盘退出;
3、重新打开“新建 文本文档“,看到什么了?
4、是不是刚刚录入的“移动“两字?
咱们换过来
1、在桌面上点右键,选择新建 - 文本文档;
2、打开“新建 文本文档“,录入“联通“两字后存盘退出;
3、重新打开“新建 文本文档“,看到什么了?
4、是不是刚刚录入的“联通“两字不见了,取而代之是个烧焦的手机电池的模样?
大家试一下,绝对的,这是怎么回事,有谁可以解释一下吗?

首先,记事本在保存文件时,默认使用ANSI编码方式(在简体中文系统上就是GB2312)保存文件。

“联通”二字的GB2312编码是0xC1 0xAA 0xCD 0xA8,换成二进制就是11000001 10101010 11001101 10101000,所以在保存时,在文本文件内,存放的就是这四个字节。

下面看看UTF-8编码规则,UTF-8使用1~3个字节保存字符(理论上是1~6个,据我所知目前只用1~3个),它根据每个字符第一字节的最高位的连续1的个数来区分本字符使用了几个字节来表示。(例如110xxxxx表示使用两字节,1110xxxx表示使用三字节。特殊的是0xxxxxxx表示使用一字节),后续属于本字符的字节一律按10xxxxxx的形式编码。

回过头来看“联通”二字的GB2312编码,请注意看它的二进制形式,是不是和UTF-8的编码规则非常相似?可以说它是完全符合UTF-8编码规则的。(11000001,表示本字符使用两个字节编码,后续的一字节编码符合10xxxxxx的形式,然后是11001101,也表示本字符使用两个字节编码,后续的一字节编码符合10xxxxxx的形式),所以,Windows的记事本误认为这是一个UTF-8编码的文件,于是用UTF-8打开它,自然就出现乱码了。我举几个字为例,“蕵”、“聣”、“聛”……,他们都能造成记事本误认编码。(各位也可以按照以上规则,自行找出更多的字来)

最后一个问题,就是当我们打开文件看见乱码时,如果手工删除乱码,再重新打上“联通”,保存,然后再双击打开,则不会出现乱码现象。这是因为,当你第一次打开看见乱码时,Windows已经认为此文件是UTF-8编码了,然后你重新输入“联通”并保存时,Windows实际是按UTF-8编码方式保存的,在新文件的文件头,Windows已经自动添加了0xEF,0xBB,0xBF共三个字节作为UTF-8编码标志,它能告诉记事本此文件使用UTF-8编码,而“联通”二字已经按每个字三字节的UTF-8编码方式保存在文件中,所以新文件的大小一共是9字节,所以也不会出现乱码现象了。

地球很危险啊,你还是回火星吧……
好几年前的老帖了^_^

这是因为你在存文件的时候,默认的是存为ANSI编码的,你可以把它存为Unicode编码形,电脑报上有一篇文章就介绍过。还告诉你一个东西,去网上下一个电子书,是网页型的,就好像是Xp系统里的帮助的文件类型一样,你帮它放在一个命名为#的文件夹里,再打开看看吧,竟然出现无法连接到服务器哦

原来是这么回事啊!!!
还是没弄明白
哈哈