导出excel到System.DataTable时出现未知问题

本文关键字:未知 问题 DataTable excel System 导出 | 更新日期: 2023-09-27 18:04:21

我试图从Excel文件到数据表获取数据。
下面是我的代码片段:

 FilePath = WebConfig.SavePath + "Book2.xls";
            // Create the connection object
            OleDbConnection oledbConn = new OleDbConnection(WebConfig.ExcelConnection(FilePath));
            // Open connection
            oledbConn.Open();
            // Create OleDbCommand object and select data from worksheet Sheet1 //WebConfig.SheetNameFirstExcel
            OleDbCommand cmd = new OleDbCommand("SELECT * FROM [" + "Sheet1" + "$]", oledbConn);
            // Create new OleDbDataAdapter
            OleDbDataAdapter oleda = new OleDbDataAdapter();
            oleda.SelectCommand = cmd;
            // Create a DataSet which will hold the data extracted from the worksheet.
            DataTable dt = new DataTable();
            // Fill the DataSet from the data extracted from the worksheet.
            oleda.Fill(dt);


这样做的问题是,一些单元格的数据导出到数据表,而另一些则不是。
excel的格式类似于:
第一行标题
第二部分文字
第三行空白
第4位起一个表
10列&298行。

上面的代码缺少什么,或者在asp.net 3.5中提取这样的excel(.xlsx)到可数据表的任何建议

导出excel到System.DataTable时出现未知问题

考虑到您所遇到的所有问题,我怀疑标准oledb驱动程序由于表数据之前的文本行而无法正确读取excel文件。

如何移动,只是代码手动使用这个库http://epplus.codeplex.com/读取xlsx文件,并创建您的数据表或db记录