zoukankan      html  css  js  c++  java
  • 读取EXCEL数据到内存DataTable

     protected void Page_Load(object sender, EventArgs e)
            {
                string filepath = Server.MapPath("~/file/产品实例数据.xlsx");
    
                ReadExcelToTable(filepath);
            }
    
    
            private DataTable ReadExcelToTable(string path)
            {
                //连接字符串
                string connstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1';";
                // Office 07及以上版本不能出现多余的空格 而且分号注意
    
                //string connstring = Provider=Microsoft.JET.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1';";  
    
                //Office 07以下版本 因为本人用Office2010 所以没有用到这个连接字符串  可根据自己的情况选择 或者程序判断要用哪一
    
                //个连接字符串
    
                using (OleDbConnection conn = new OleDbConnection(connstring))
                {
                    conn.Open();
                    DataTable sheetsName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });  //得到所有sheet的名字    
                    string firstSheetName = sheetsName.Rows[0][2].ToString();   //得到第一个sheet的名字    
                    string sql = string.Format("SELECT * FROM [{0}]", firstSheetName);  //查询字符串     
    
                    OleDbDataAdapter ada = new OleDbDataAdapter(sql, connstring);
                    DataSet set = new DataSet();
                    ada.Fill(set);
                    return set.Tables[0];
                }
            }
    

      

  • 相关阅读:
    struts开发步骤
    线程同步及同步变量
    pthread_detach pthread_join pthread_create
    NSThread
    Java线程中run和start方法的区别
    java的守护线程与非守护线程
    多线程的多重属性
    Java Observer 观察者
    Java_观察者模式(Observable和Observer)
    任务、进程和线程
  • 原文地址:https://www.cnblogs.com/vincentvoid/p/5688513.html
Copyright © 2011-2022 走看看