background image

导入

Excel 的操作是非常常见的操作,可以使用 Aspose.Cell、APOI、MyXls、OLEDB、Excel 

VBA 等操作 Excel 文件,从而实现数据的导入,在导入数据的时候,如果是强类型的数据,
那么这几种方式好像都表现差不多,正常操作能够导入数据。如果是非强类型的数据,那么
就需要特别注意了,一般情况下,导入的

DataTable 数据列的类型是以第一行内容作为确定

列类型的,本文介绍利用

Aspose.Cell 控件导入 Excel 非强类型的数据的操作。

什么是强类型的数据呢,就是在

Excel 表格中,除了第一列名外,他们的数据格式都一样

的,如下所示。

如 果 使 用

C# 导 入 到 Winform

界面中,那么数据显示效果如
下所示。从这里可以看到,这
些数据都是遵循一定的格式,
名字为字符串,年龄为数值。

使 用

OLEDB 方 式

导 入

Excel 数 据 的

代码如下所示。

            try
            {                

                myDs.Tables.Clear();
                myDs.Clear();
                this.gridControl1.DataSource = null;   
             
                string connectString = string.Format(connectionStringFormat, this.txtFilePath.Text);
                string firstSheet = ExcelHelper.GetExcelFirstTableName(connectString);                
                OleDbConnection cnnxls = new OleDbConnection(connectString);
                               OleDbDataAdapter  myDa  =  new  OleDbDataAdapter(string.Format("select  *  from 
[{0}]", firstSheet), cnnxls);
                myDa.Fill(myDs, "【导入表】");
                
                this.gridControl1.DataSource = myDs.Tables[0];
                this.gridView1.PopulateColumns();
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);