为 FileRead, FileReadLine, Loop Read, FileAppend 和 FileOpen() 设置默认编码.
FileEncoding , Encoding
如果为空或省略, 则默认为 CP0. 否则, 指定以下字符串之一:
CP0: 系统默认的 ANSI 代码页. 见下文注释.
UTF-8: Unicode UTF-8, 等同于 CP65001.
UTF-8-RAW: 像上面一样, 但创建新文件时不写入字节顺序标记.
UTF-16: Unicode UTF-16 带小端字节顺序标识, 等同于 CP1200.
UTF-16-RAW: 像上面一样, 但创建新文件时不写入字节顺序标记.
CPnnn: 带数值标识符 nnn 的代码页. 请参阅代码页标识符.
如果没有使用 FileEncoding, 则默认编码为 CP0.
CP0 不能普遍地标识单个代码页; 相反, 它对应于系统默认的 ANSI 代码页, 这取决于系统区域设置或 "非 Unicode 程序的语言" 系统设置. 要获得实际的代码页, 请调用 DllCall("GetACP")
.
内置变量 A_FileEncoding 包含当前设置. 如果 CP0 是当前设置, A_FileEncoding 返回一个空值.
每个新启动的线程(如热键, 自定义菜单项或计时器子例程) 都使用此命令的默认设置重新启动. 可以在自动执行段(脚本的顶部) 中使用此命令来更改该缺省值.
如果文件中存在 UTF-8 或 UTF-16 字节顺序标识, 则不会使用默认编码, 除非文件以只写访问打开(即文件的先前内容被丢弃).