ä ü ö ß 的 VBS 编码

VBS encoding for ä ü ö ß

我想自动生成 Outlook 签名。问题是我需要 ä ö ü ß 但代码将它们转换为 ä ö ü ß。

我试图找到一种方法来更改编码,但我的研究没有找到任何东西。

Set Word = CreateObject("Word.Application")
Set Doc = Word.Documents.Add()

Word.Selection.TypeText "ä ö ü ß"

With Word.EmailOptions.EmailSignature
    .EmailSignatureEntriesAdd "AD Signature", Doc.Range()
    .NewMessageSignature = "AD Signature"
    .ReplyMessageSignature = "AD Signature"
End With

Doc.Saved = True
Word.Quit

您已将 VBS 文件保存为 UTF-8。

将其保存为 single-byte 编码(Microsoft 记事本将其称为 ANSI,在您的 PC 上这很可能等于 Windows-1252)。

如果您需要 Unicode 字符,将其保存为 UTF-16 也可以。

记事本中的默认编码自古以来就是 ANSI,但 Windows 10 在某些时候将其切换为纯 UTF-8(没有 BOM)。这通常还不错,但是当文件开头没有 BOM 时,VBScript 解析器将继续采用 ANSI 源代码。

VBScript 可以处理 Unicode 源,但让它知道的方法是 BOM。对于 UTF-16,BOM 是强制性的,因此 UTF-16 有效。

但是,VBScript 无法处理 UTF-8 编码的源代码,因此即使您在保存文件时选择“UTF-8 with BOM”也不会起作用。