vb6中的字符编码

时间:2014-02-17 22:31:40

标签: vba character-encoding vb6

我有一个存储txt,word和pdf文件的应用程序。然后,在选择“视图”选项时,它会向用户显示文档。

我们使用以下代码将Unicode字符串转换为字节数组。

   aANSISString = StrConv(VerToInsert.FileBuffer, vbFromUnicode)

该文档由特定文档类型的默认应用程序查看。如Microsoft Word for .doc文件等。我面临的问题是当系统区域设置更改为"非英语" ,例如阿拉伯语(代码页1256),数据已损坏且无法查看。 但是一旦系统区域设置更改为英语,一切正常。

我没有用txt文件来解决这个问题。有人可以告诉我原因或指向我参考页面。

1 个答案:

答案 0 :(得分:0)

添加到Bob77的评论 - 从Office开发中心文档中有关第三个参数LCID(https://msdn.microsoft.com/en-us/library/office/gg264628.aspx):

LCID - 可选。 LocaleID,如果与系统LocaleID不同。 (系统LocaleID是默认值。)

当您未指定LCID时,StrConv依赖于系统区域设置。

如果用户的语言环境与英语不同,则应始终指定LCID。