xml - 如何从vbs读取utf-8 xml并获得正确的字符编码

标签 xml vbscript utf-8

我正在尝试从 vbs 脚本中读取 xml 文件。 Xml 以 utf-8 编码并具有适当的 header

从 vbs 脚本我使用 microsoft xmldom 解析器读取 xml:

Dim objXMLDoc
Set objXMLDoc = CreateObject( "Microsoft.XMLDOM" )
objXMLDoc.load("vbs_strings.xml")

在 xml 中,我正在尝试使用 &#nnn; 按代码编写字符符号。然后我从 vbscript 中读取这个字符并尝试使用 Asc() 获取它的代码功能。对于某些字符,它工作正常,读取的代码等于编写的代码。但是对于某些字符 Asc()总是返回代码 63 .会是什么?

例子:

如果xml包含<section>&#195;<section>在脚本中我有 Section表示此 xml 节点的变量然后代码:

Asc(Section.Text)

将返回值 195,它是 ok .

如果xml包含<section>&#110;<section>然后代码:

Asc(Section.Text)

将返回值 110,它是 ok .

但是如果xml包含<section>&#130;<section><section>&#156;<section><section>&#140;<section>

Asc(Section.Text)

将返回值 63,这肯定不好。

你知道为什么吗?

最佳答案

十进制码位 130、156 和 140 不对应 Unicode 字符集中的任何字符(123-192 未定义)。 Asc 使用的默认字符映射器会将此类错误映射到 ?这是字符 63。这些代码点映射到哪些字符?

我怀疑你想要的代码是: œŒ

关于xml - 如何从vbs读取utf-8 xml并获得正确的字符编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2722619/

相关文章:

java - 我如何使用泛型为我的方法使用变量返回值?

xml - 使用Powershell操纵xml文件dom并创建另一个xml文件

xml - VBScript从XML节点分配变量

php - 使用 PHP 以非 ASCII 字符输出日期

java - 字符集过滤器导致解析 UTF-8 字符时出现问题

python - XPATH - 获取父子元组

java - org.apache.xml.security.c14n.CanonicalizationException : Element listFunctions has a relative namespace: xmlns ="xxx_xxx_listFunctions"

mysql - 你如何解决这个错误 : MySQL ODBC Access denied for user 'ODBC' @'localhost' ?

vba - 在 vb 中使用 "OR"时,IF 条件有什么限制吗?

linux - dompdf 生成的 pdf 中不显示欧元符号