访问阅读Thorugh UTF-8编码

时间:2019-03-07 17:09:15

标签: ms-access access-vba

我今天基本上要做的是,如果Access数据库文件损坏,我有一个VB函数,可以使用以下Transfer / SaveAs命令将所有表单元素导出到文本文件中:

accApp.DoCmd.TransferText acExportDelim, , td.Name, destFile, True, , 65001

accApp.SaveAsText acForm, d.Name, sExportLocation & "Form_" & d.Name & ".txt"

此功能设置为动态运行,以便它根据给定的源数据库文件路径执行任务。大多数情况下,Access对象确实可以成功导出为文本文件,但是对于以特殊字符命名的Access对象(例如“客户信息/状态”,“客户报告:基于区域”),代码将忽略这些对象。删除错误处理行将返回声名狼藉的3011错误。在vba运行时,是否有一种方法可以强制Access将带有UTF-8字符的字符串放入有效路径?通过添加参考也许?

1 个答案:

答案 0 :(得分:3)

这与UTF-8无关。

在Windows中,诸如/:之类的字符在文件名中是非法的,因此您不能在文件中使用这些名称。您必须替换这些字符。

尝试命名文件some/file.txt,资源管理器会告诉您不允许的内容。