VBS中转换word特殊字符
Convert word special characters in VBS
因此,一些用户决定将 word 文档粘贴到我使用的应用程序中。结果我们数据库里有这样的∷¼,应该是这样的黑色向下三角形▼
现在应用程序使用 .vbs 文件获取数据并将其显示到经典 asp 页面,问题是,如果我进行替换以查找 ½ vbs 已经将它转换为 ▼,当然它永远找不到它,所以我最终得到 â–¼ 显示 asp 页面。
所以即使我写了这个
strRet = replace(strRet, "â–¼", "▼")
当我调试时它看起来像这样
strRet = replace(strRet, "▼", "▼")
有谁知道如何让 vbs 查找实际的字符串
使用 AscW() 和 ChrW() 为 Replace() 调用构建目标字符串:
>> s = "â–¼"
>> WScript.Echo s, AscW(Mid(s, 1, 1)), AscW(Mid(s, 2, 1)), AscW(Mid(s, 3, 1))
>>
â–¼ 226 8211 188
>> WScript.Echo Replace(s, ChrW(226) & ChrW(8211) & ChrW(188), ChrW(9660))
>>
▼
>>
因此,一些用户决定将 word 文档粘贴到我使用的应用程序中。结果我们数据库里有这样的∷¼,应该是这样的黑色向下三角形▼
现在应用程序使用 .vbs 文件获取数据并将其显示到经典 asp 页面,问题是,如果我进行替换以查找 ½ vbs 已经将它转换为 ▼,当然它永远找不到它,所以我最终得到 â–¼ 显示 asp 页面。
所以即使我写了这个
strRet = replace(strRet, "â–¼", "▼")
当我调试时它看起来像这样
strRet = replace(strRet, "▼", "▼")
有谁知道如何让 vbs 查找实际的字符串
使用 AscW() 和 ChrW() 为 Replace() 调用构建目标字符串:
>> s = "â–¼"
>> WScript.Echo s, AscW(Mid(s, 1, 1)), AscW(Mid(s, 2, 1)), AscW(Mid(s, 3, 1))
>>
â–¼ 226 8211 188
>> WScript.Echo Replace(s, ChrW(226) & ChrW(8211) & ChrW(188), ChrW(9660))
>>
▼
>>