AutoHotkey:将特殊字符写入文件

时间:2021-04-16 08:33:31

标签: autohotkey

我正在尝试将度数符号写入文件,但我只得到特殊字符问号符号。我试过用 UTF-8 编码打开文件,但它没有改变任何东西。有没有办法做到这一点?

这就是我正在尝试的:

#NoEnv
SetWorkingDir %A_ScriptDir%

zml := FileOpen("zml.xml", "rw", UTF-8)
zml.write("°")
zml.close()

1 个答案:

答案 0 :(得分:0)

来自文档:“如果支持 Unicode,则 Number 是 0 到 0x10FFFF 之间的 Unicode 字符代码(或 [v1.1.21] 之前的 0xFFFF);否则,它是 0 到 255 之间的 ANSI 字符代码。”

>

zml.write(chr(176)) 有效。

176 是度数符号的 ASCII 码。

zml.write(chr(0x00B0)) 也有效。

0x00B0 是度数符号的 Unicode 编码

zml := FileOpen("zml.xml", "rw", UTF-8)
zml.write(chr(176))                      ; also works: zml.write(chr(0x00B0))
zml.close()

是否启用Unicode编码;可以检查一下:

MsgBox % A_IsUnicode ? "Unicode" : "ANSI"

在我的机器 Windows 代码页上:1252

ahk 版本:1.1.33.02

ahk 脚本文件保存为 UTF-8

相关问题