conn = New Odbc.OdbcConnection("Driver={Driver do Microsoft Excel(*.xls)};dbq=文件路径\文件名.xls;defaultdir=文件路径;driverid=790;fil=excel 8.0;filedsn=C:\Program Files\Common Files\ODBC\Data Sources\exceldatasource.dsn;maxbuffersize=2048;maxscanrows=8;pagetimeout=5;readonly=0;safetransactions=0;threads=3;uid=admin;usercommitsync=Yes") //uid 是你联接文件的密码,由你来定
            conn.Open();
            sqlstr = "select * from [通讯短信表$]";
            mycommand = New Odbc.OdbcCommand(sqlstr, myconnection);.....后面的按正常来了是用odbc联接的,Olebd可参照此法。
excel文件当做一个数据库,文件里的表你当做数据库的表,注意表名后要加"$";
oledb联成功后,把代码贴出来给大家学习一下,应该不难。

解决方案 »

  1.   

    2004-04-30曾在winmag论坛上,发表过一篇相关的文章,请参考一下:http://www.winmag.com.cn/forum/itemdisplay.asp?boardid=26&id=423240
      

  2.   

     using System.Runtime.InteropServices;  
                    using System.Data.OracleClient;
    DataTable mytable =new System.Data.DataTable();
            DataSet     DS = new   System.Data.DataSet();
                string path="",f_folder,f_name,strConn,sql;
                try
                ...{
                    path=File1.Value.ToString();            
                    if( path =="")
                    ...{
                        Response.Write("<script>alert('请选择Excel文件路径!')</script>");
                        return;
                    }
                    f_folder = Server.MapPath("upfile\")  ;
                    f_name = System.DateTime.Now.ToString() ;                f_name = f_name.Replace(" ", "");
                    f_name = f_name.Replace("-", "");
                    f_name = f_name.Replace(":", "");
                    f_name = f_folder + f_name + ".xls";                        
                    File1.PostedFile.SaveAs(f_name);                strConn = "Provider=Microsoft.Jet.OleDb.4.0;data source=" + f_name + ";Extended Properties=Excel 8.0";
                                
                     sql = "Select  * FROM [Sheet1$]";
                    
                    
                    System.Data.OleDb.OleDbConnection  objConn= new System.Data.OleDb.OleDbConnection(strConn);
                    objConn.Open();
                    System.Data.OleDb.OleDbDataAdapter obj= new System.Data.OleDb.OleDbDataAdapter(sql, objConn);
                    
                    obj.Fill(DS, "EXCELDATA"); 
                    obj.Dispose();
                    objConn.Close();
     
                    mytable = DS.Tables["EXCELDATA"];  
                    int s=mytable.Rows.Count; 
                    DataGrid1.DataSource = mytable.DefaultView;
                    DataGrid1.DataBind();
      

  3.   

    http://blog.csdn.net/W3031213101/archive/2007/12/20/1955228.aspx