在Windows下进行编程,经常会发现html或php在输出中文时出现中文乱码的情况,而通过html中的http-equiv或php中的header指定为uft-8时也丝毫没有改变,当然这种文件在移植到Linux系统中也会出现乱码的情况。这是由于在Windows系统中通过右键创新文件时默认编码为ANSI,在记事本中通过文件>另存为…并在“编码”下拉框中选择UTF-8并保存即可解决。
以上方法虽然有效,但如果每次都这样去另存为修改一下显然会很麻烦。要实现默认新建即为UTF-8格式可采用以下方法:
1.在C:\Windows\SHELLNEW下新建一个txt文件,选择一个名称,如UTF8.txt,并采用上述方法另存为UTF-8格式
2.Win+R,输入regedit进入注册表,并找到HKEY_CLASSES_ROOT\.txt\ShellNew,右键新建>字符串值,名称处输入FileName,数据处输入上一步中新建的文件名UFT8.txt
此时再去通过右键去新建文本文件时会发现默认就是UTF-8格式了。为保持完整性,附上网上建议的第三步,请大家根据具体情况决定是否添加。
3.在注册表里找到HKEY_CURRENT_USER\Software\Microsoft\Notepad,右键新建>DWORD,添加名称分别为fSavePageSettings和fSaveWindowPositions且值为1的内容。
以上方法可以完美解决右键新建的文件,但对于在开始菜单中直接打开记事本再保存的文件无效。