从C#查询Excel文件-无结果
我一直在尝试使用OLEDB连接从C#查询excel文件。程序运行时没有运行时错误,但不会返回任何结果。我用不同的excel文件进行了尝试,但得到了类似的结果 编辑:excel文件位于项目目录中。如果我从当前位置删除excel文件,程序将获得“未找到文件”异常从C#查询Excel文件-无结果,c#,excel,ado.net,oledb,C#,Excel,Ado.net,Oledb,我一直在尝试使用OLEDB连接从C#查询excel文件。程序运行时没有运行时错误,但不会返回任何结果。我用不同的excel文件进行了尝试,但得到了类似的结果 编辑:excel文件位于项目目录中。如果我从当前位置删除excel文件,程序将获得“未找到文件”异常 private void btnRun_Click(object sender, EventArgs e) { string strFileName = "playerData.xls";
private void btnRun_Click(object sender, EventArgs e)
{
string strFileName = "playerData.xls";
string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strFileName + ";Extended Properties=" + "\"Excel 8.0;HDR=YES\"";
OleDbConnection conn = new OleDbConnection(connStr);
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT * FROM [Sheet1$]";
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
dgsResults.DataSource = ds;
conn.Close();
}
有人知道为什么这不会返回结果吗
谢谢,您正在connStr中使用strFileName,但尚未提供其路径 应遵循以下原则:
string strFileName = @"c:\excel location\playerData.xls";
显然,在数据绑定过程中必须引用特定的数据表。在fill()方法解决问题后添加以下行
da.Fill(ds);
dgsResults.DataSource = ds.Tables[0]; //this is the line to be added