现在遇到这样一个问题,在做Excel导入时用如下代码:
OleDbConnection oleDBConn = new OleDbConnection(strConn); DataSet ds = new DataSet(); if (oleDBConn.State == ConnectionState.Closed)
{
oleDBConn.Open();
}
DataTable m_tableName =
oleDBConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
new object[] { null, null, null, "Table" }); for (int j = 0; j < m_tableName.Rows.Count; j++)
{
m_tableName.TableName = m_tableName.Rows[j]["TABLE_NAME"].ToString(); if (m_tableName.TableName.IndexOf("薪资资料") > -1)
{
OleDbDataAdapter oleAdMaster =
new OleDbDataAdapter("select * from [" + m_tableName.TableName + "]", oleDBConn);
// Excel表格中的信息转存到DataSet中
oleAdMaster.Fill(ds, "m_tableName");
oleAdMaster.Dispose();
break;
}
}
DataRow[] dr = ds.Tables[0].Select(); //定义一个DataRow数组
int rowsNum = ds.Tables[0].Rows.Count;这段代码用来把Excel里面的数据转换到DataSet中,问题来了Excel中没有那么多列数据为什么会获取多余的条数,比如Excel中有10条数据,结果ds.Tables[0].Rows.Count=13 ,这个问题如何解决????
OleDbConnection oleDBConn = new OleDbConnection(strConn); DataSet ds = new DataSet(); if (oleDBConn.State == ConnectionState.Closed)
{
oleDBConn.Open();
}
DataTable m_tableName =
oleDBConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
new object[] { null, null, null, "Table" }); for (int j = 0; j < m_tableName.Rows.Count; j++)
{
m_tableName.TableName = m_tableName.Rows[j]["TABLE_NAME"].ToString(); if (m_tableName.TableName.IndexOf("薪资资料") > -1)
{
OleDbDataAdapter oleAdMaster =
new OleDbDataAdapter("select * from [" + m_tableName.TableName + "]", oleDBConn);
// Excel表格中的信息转存到DataSet中
oleAdMaster.Fill(ds, "m_tableName");
oleAdMaster.Dispose();
break;
}
}
DataRow[] dr = ds.Tables[0].Select(); //定义一个DataRow数组
int rowsNum = ds.Tables[0].Rows.Count;这段代码用来把Excel里面的数据转换到DataSet中,问题来了Excel中没有那么多列数据为什么会获取多余的条数,比如Excel中有10条数据,结果ds.Tables[0].Rows.Count=13 ,这个问题如何解决????
解决方案 »
- 用.net如何写一个定时读取数据生成XML的程序
- 问个验证控件的问题
- 用户控件中图片路径设置问题
- 关于编辑器中图片的问题
- asp.net中“是”和“否”提示框 的事件选择问题,急等!!!
- 熬夜加班,关于多个相同自定义只写一次JAVASCRIPT或者HTML的问题
- 一直做asp网站,不过只有点基础,现在因为有朋友要我帮他打下手做系统,asp.net的,各位高手帮忙!
- 请教,MSPetShop的Web.config中使用数据访问层?
- 求几个.net+C#源码.......
- 加了RegularExpressionValidator控件,但是需要必须不为空,但是我希望能够用户可以不填
- 传递参数(网址格式)Request.QueryString后发现被解码
- 关于发送手机短信验证码保存问题
var myConn = new OleDbConnection(_strCon);
var strCom = " SELECT * FROM " + sheetName;
myConn.Open();
var myCommand = new OleDbDataAdapter(strCom, myConn);
var ds = new DataSet();
myCommand.Fill(ds);
myConn.Close();