Windows系统下,如果将文件保存为UTF-8格式(不是UTF-8 + BOM格式,即不能用记事本保存),再重新打开这个文件,会发现有时文件被保存成了UTF-8格式,但有时却是ANSI编码。
经过反复试验,发现规律如下:
1. 如果文件里不包含全角字符,如汉字、中文字符等符号,不论保存成ANSI还是UTF-8,文件都会被系统转换成ANSI;
2. 如果文件中包含汉字、中文字符等全角符号,则保存成UTF-8,打开还是UTF-8;
3. 如果文件是ANSI编码,且内容是纯英文,这时再加入汉字,文件不会变为UTF-8格式,需要手动另存为UTF-8(不要使用记事本另存为)。
本文探讨了Windows系统下文件编码转换的特殊规则。当文件不含全角字符时,无论原始编码如何,系统均会将其转为ANSI编码。若文件含有中文字符等全角符号,则保存为UTF-8编码后仍保持不变。对于ANSI编码的纯英文文件,在加入汉字后不会自动转换为UTF-8,需手动操作。
4344

被折叠的 条评论
为什么被折叠?



