Excel中有好多数据,要是一个一个再写入很烦琐,有没有什么办法,在ASP.NET的页面上直接把Excel中的数据读出来,显示在页面上呢?

解决方案 »

  1.   

    把Excel看作是一个数据源,Excel中的每个Sheet相当于一个表。
    然后把它放到DataSet中
    Excel.Application eApp = new Excel.ApplicationClass();
    Excel.Workbook Ew = eApp.Workbooks.Open(文件路径,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value );
    string ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = " + 文件的路径 + ";Extended Properties=Excel 8.0";
    string query = "SELECT * FROM ["+ EWs.Name.ToString() +"$]";//EWs.Name是一个Sheet的名称
    OleDbCommand OleCmd = new OleDbCommand(query,new OleDbConnection(ConnStr));
    OleDbDataAdapter oleAdapter = new OleDbDataAdapter(OleCmd);
    DataSet MyDS = new DataSet();
    oleAdapter.Fill( MyDS , "["+ EWs.Name.ToString() +"$]" );
    DataTable DT = MyDS.Tables[0];