3

我已经构建了一个 Excel/VBA 工具来验证 csv 文件,以确保它们包含的数据是有效的。它们的 csv 可以来自任何地方(来自完整的 unix 系统或从 Excel 中保存数据的桌面用户)。Excel 工具被发送给企业,因此他们可以在自己的环境中验证他们的 csv 文件,而无需冒数据离开系统的风险。因此,解决方案需要在本机 VBA 中,而不是链接到外部库。

因此,使用 VBA,我需要能够自动检测 UTF-8(带或不带 BOM)或 ANSI 文件编码,并在这些不是用于 csv 的文件编码时警告用户。

我认为这可能涉及从文件开头读取几个字节并根据字节顺序标记的存在确定编码。

你能帮我让我走上正确的道路吗?

4

1 回答 1

2

假设您可以自由要求用户选择正确的文件类型,让他们对他们选择的文件负责;)

这意味着,您可以创建一个表单,用户可以在其中选择文件名和编码类型,就像我们在file open向导中所做的那样。

别的,

我建议你使用FileSystemObject. 它返回一个TextStream可用于确定编码的值。我怀疑 VBA 是否支持其他类型的编码,如果支持,请纠正我 :) 并很高兴听到。:)

这是进一步考虑的链接:-

于 2012-12-17T12:49:14.863 回答