日期:2014-05-20  浏览次数:20791 次

C#读取Excel列名的问题。速答速结分。
Excel的第一行是
ID             Name               Age
的列名,在导入到DataSet后取不到这些列名只能用索引,
请问有什么办法可以把Excel里面的这一行读出来?

谢谢。

------解决方案--------------------
上一段是从0开始,
下一段是从1开始
------解决方案--------------------
从返回查询的DataSet取就OK了
private OleDbConnection oleConn = null;
public DataAccess(string filePath)
{
oleConn = new OleDbConnection( "provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + filePath + "; " + "Extended Properties=Excel 8.0 ");
}

private void OpenConn()
{
if (oleConn.State == ConnectionState.Closed)
{
oleConn.Open();
}
}

private void CloseConn()
{
if (oleConn.State == ConnectionState.Open)
{
oleConn.Close();
}
}

/// <summary>
/// 查询
/// </summary>
/// <param name= "oleCmdstr "> </param>
/// <returns> </returns>
public DataSet ReturnOleDataSet(string oleCmdstr)
{
this.OpenConn();
DataSet ds = new DataSet();
try
{
OleDbCommand oleCmd = new OleDbCommand();
oleCmd.Connection = oleConn;
oleCmd.CommandText = oleCmdstr;

OleDbDataAdapter oleDa = new OleDbDataAdapter(oleCmd);

oleDa.Fill(ds);
}
finally
{
this.CloseConn();
}
return ds;
}
------解决方案--------------------
从DataSet 中取出的第一行就是列名