为什么我的这段程序总是从Excel数据的第二行开始读???
string ConnectionString = "Provider= Microsoft.Jet.OLEDB.4.0;Data Source='" + strPath + "';Extended Properties=Excel 8.0";
OleDbConnection cnnxls = new OleDbConnection(ConnectionString);
OleDbDataAdapter myDa = new OleDbDataAdapter("select * from [Sheet1$]", cnnxls);
DataSet myDs = new DataSet();
myDa.Fill(myDs, "table1"); if (myDs.Tables["table1"].Rows.Count != 0)
{
export=export.Append("<table border=1 cellpadding=0 cellspacing=0>");
for (int i = 0; i < myDs.Tables["table1"].Rows.Count; i++)
{
export = export.Append("<tr><td>"+i+"</td>");
for (int j = 0; j < myDs.Tables["table1"].Columns.Count; j++)
{
export = export.Append("<td>");
export = export.Append(myDs.Tables["table1"].Rows[i][j].ToString());
export = export.Append("</td>");
}
export = export.Append("</tr>");
}
export=export.Append("</table>");
}
string ConnectionString = "Provider= Microsoft.Jet.OLEDB.4.0;Data Source='" + strPath + "';Extended Properties=Excel 8.0";
OleDbConnection cnnxls = new OleDbConnection(ConnectionString);
OleDbDataAdapter myDa = new OleDbDataAdapter("select * from [Sheet1$]", cnnxls);
DataSet myDs = new DataSet();
myDa.Fill(myDs, "table1"); if (myDs.Tables["table1"].Rows.Count != 0)
{
export=export.Append("<table border=1 cellpadding=0 cellspacing=0>");
for (int i = 0; i < myDs.Tables["table1"].Rows.Count; i++)
{
export = export.Append("<tr><td>"+i+"</td>");
for (int j = 0; j < myDs.Tables["table1"].Columns.Count; j++)
{
export = export.Append("<td>");
export = export.Append(myDs.Tables["table1"].Rows[i][j].ToString());
export = export.Append("</td>");
}
export = export.Append("</tr>");
}
export=export.Append("</table>");
}
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + sPath + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";
HDR表示要把第一行作为数据还是作为列名,作为数据用hdr=no,作为列名用hdr=yes
找不到可安装的 ISAM
string spath = @"d:\aa.xls";
DataSet ds = new DataSet();
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + spath + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";OleDbConnection conn = new OleDbConnection(strConn);
OleDbDataAdapter xlsDA = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", conn);
//将DA数据填充到DS
xlsDA.Fill(ds, "data");
//将DS与DataGrid关联
dataGrid1.DataSource = ds;
dataGrid1.SetDataBinding(ds, "data");