2014-02-17 31 views
3

我有一个存储txt,word和pdf文件的应用程序。然后,当选择View选项时,它将文档显示给用户。vb6中的字符编码

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

aANSISString = StrConv(VerToInsert.FileBuffer, vbFromUnicode) 

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

我不会用txt文件来解决这个问题。有人能告诉我这个理由吗?或者指点我参考一个页面。

+1

'StrConv()'函数有一个可选的第三个参数:'LCID',可能有帮助。 – Bob77

回答

0

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

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

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

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