将Excel工作表导入数据表

时间:2010-05-13 15:13:16

标签: c# asp.net vb.net ado.net

我被要求在我的应用程序中创建导入功能。我得到一个excel工作表作为输入。工作表具有列标题,后跟数据。用户只想从他们的系统中选择一个xls文件,单击上传,该工具将删除数据库中的表并添加这些新数据。

我认为最好的方法是将数据带入一个数据表对象,然后对数据表插入行中的每一行进行数据库操作。

我的问题是,有什么人可以给我代码打开excel文件,知道数据在文件中开始的行,并将数据导入到datable对象中?

4 个答案:

答案 0 :(得分:5)

看看Koogra

从路径到XLS文件实例化WorkBook对象。

您可以从工作簿的WorkSheet属性访问Sheets对象。

您可以通过访问工作表的Rows属性从索引MinRowMaxRow来枚举工作表中的行。

您可以通过访问从索引CellsMinColumn的行MaxColumn属性来枚举给定行中的单元格。

每个单元格都有Value属性(object)以及FormattedValue方法(string)。

尝试一下 - 我发现它非常直观且易于使用。

答案 1 :(得分:0)

您可以使用OleDbConnection连接到excel文件并使用SQL查询进行查询。

如果是Asp.Net应用程序,那么您可以使用FileUpload控件并从文件中获取字节。然后,您必须手动将其转换为数据表。

试试这些链接:

OleDbConnection to excel file

Byte array to datatable

答案 2 :(得分:0)

您所寻找的是Here

所描述的概念

如果您不想使用第三方库,那么Dans解决方案将适合您

答案 3 :(得分:0)

首先你必须下载dll文件 NExcel.dll
通过使用这个DLL你可以制作各种非常有用的对象  使用vb和c#导入.net中的excel数据。

祝你好运。