记事本里出现该文件含有Unicode格式的字符,当保存为ANSI编码的文本时,该字符将丢失。怎么回事啊??
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记事本里出现该文件含有Unicode格式的字符,当保存为ANSI编码的文本时,该字符将丢失。怎么回事啊??相关的知识,希望对你有一定的参考价值。
参考技术A由于ANSI编码不包括所有字符,所以文档里有一些特殊符号或其他语言的文字时,就可能导致字符丢失。
具体解决方法如下:
出现警告窗口时,点击“取消”按钮,
弹出一个“另存为”界面,在最下面的“编码”的选项中,单击下拉列表选择“Unicode”,然后点击“保存”按钮,这样就能保存Unicode字符。
不过,编码类型选“UTF-8”或“Unicode big endian”都可以,它们是Unicode的几种形式。
拓展资料
ANSI 确实是遗留编码,在不同语言的系统中编码不同,这一部分在微软的术语中叫 code page。比如所谓 GBK 编码,实际上更多地被叫做 CP936。这个术语是从 IBM 早期的一些工作中继承下来的,现在也没改变。但是,代码页这个概念在引入更大的字符集时已经遇到了问题,比如当初 GBK 扩展到 GB18030 时,它无法自然地用同一个代码页解决问题,不得不使用非常复杂的映射技术在几个代码页中切换才最终达到目的。
Unicode里有几种方式:
UTF-16BE/LE:UTF-16就是Windows模式的编码模式(Windows里说的Unicode一般都是指这种编码),用2个字节表示任意字符,注意:英文字符也占2个字节(变态不?),这种编码可以表示65536个字符,至于LE和BE,就是一个数值在内存/磁盘上的保存方式,比如一个编码0x8182,在磁盘上应该是0x81 0x82呢?还是0x82 0x81呢?就是高位是最先保存还是最后保存的问题,前者为BE,后者为LE。
UTF-8:UTF-8则是网页比较流行的一种格式:用一个字节表示英文字符,用3个字节表示汉字,准确的说,UTF-8是用二进制编码的前缀,如果某个UTF-8的编码的第一个字节的最高二进制位是0,则这个编码占1字节,如果是110,则占2字节,如果是1110,则占3字节。
计算机系统通用的字符编码工作方式
在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。
用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里;
编辑完成后,保存的时候再把Unicode转换为UTF-8保存到文件。
以上是关于记事本里出现该文件含有Unicode格式的字符,当保存为ANSI编码的文本时,该字符将丢失。怎么回事啊??的主要内容,如果未能解决你的问题,请参考以下文章
该文件含有unicode格式的字符,当文件保存为ANSI编码的文本文件时,该字符将丢失.
记事本 该文件含有unicode格式的字符 点确定就变乱码了,notePad++,UltraEditor等编辑器打开也变乱码?