c#中的OleDbConnection源变量

本文关键字:变量 OleDbConnection 中的 | 更新日期: 2023-09-27 17:52:59

如何将OleDbConnection语句中的D:'temp'test.xls替换为filePath ?

我可以得到确切的filePath(使用OpenFileDialog,然后我可以方便地找到我的.xls文件,不再硬编码),但是当我插入变量filePath作为Style2时,它不起作用。我该如何解决这个问题?谢谢。

Style1

OleDbConnection dbConnection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:'temp'test.xls;Extended Properties=""Excel 8.0;HDR=Yes;""");

Style2

OleDbConnection dbConnection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=filePath;Extended Properties=""Excel 8.0;HDR=Yes;""");

(更新)我的一些代码是这样的,

DataTable fooData = new DataTable();
            OleDbConnection dbConnection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=filePath;Extended Properties=""Excel 8.0;HDR=Yes;""");
            dbConnection.Open ();
            try
            {
                OleDbCommand dbCommand = new OleDbCommand("SELECT * FROM [maleSheet$]", dbConnection);
                OleDbDataReader dbReader = dbCommand.ExecuteReader();
                int RankIndex = dbReader.GetOrdinal("Rank");
                while (dbReader.Read())
                {
                    string rank = dbReader.GetValue(RankIndex).ToString();
                    ////....
                }
           }

OleDbDataReader dbReader = dbCommand.ExecuteReader();行错误如下

类型的未处理异常"System.Data.OleDb.OleDbException"发生在System.Data.dll

c#中的OleDbConnection源变量

OleDbConnection dbConnection = new OleDbConnection( String.Format( @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=""Excel 8.0;HDR=Yes;""", filePath ) );