0

我有一个从 asp.net 网站下载的 .xls 文件。我需要使用 vb.net 将文件中的数据导入访问数据库。如果您在记事本中打开 xls 文件,则它全是 html。试图像普通的 excel 文件一样输入数据是行不通的。

4

2 回答 2

1

实际上,您可以使用 OLEDB 执行此操作 - 您在扩展属性中指定它是 HTML,例如

Dim oleExcelConnection As OleDbConnection

sConnection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Test.xls;Extended Properties=""HTML Import;IMEX=1"""

oleExcelConnection = New OleDbConnection(sConnection)
oleExcelConnection.Open()

...

oleExcelConnection.close()

自从我尝试了这个并且它工作正常但我选择在最终实现中强制文件为 .xlsx 已经有一段时间了。我不记得究竟是为什么。

于 2013-01-16T18:24:07.013 回答
0

您可能需要先在 excel 中打开它,然后以您尝试使用的文件格式保存它。该文件是 HTML,不是 excel 格式。该网站正在使用一种技巧,通过将内容类型设置为 application/vnd.ms-excel 并将文件扩展名设置为 .xls,让浏览器使用返回的 HTML 打开 excel。在大多数情况下,浏览器将使用 html 文件启动 excel。Excel 将看到文件格式不正确,但允许用户打开并导入它。

于 2013-01-16T17:05:15.567 回答