读书人

使用数据连接字符串读取excel的有关问

发布时间: 2013-09-15 19:58:13 作者: rapoo

使用数据连接字符串读取excel的问题
首先:excel中有一列,是:项目周期
这一列有两条数据,第一条是:2011-2-4;
第二条数据是:长期


当我读取了excel后,准备放到dataset中,报错,说:长期 这个值不是有效的时间格式。

后来发现,可能是,在读第一条的时候,看到了 2011-2-4 这个值,就默认这一列都是时间格式,所以到 长期 这个值 的时候报错了。。。。

不知道大家明白不?谁遇到过这个问题啊?怎么办?

excel dataset
[解决办法]
refer:

DateTime dt1 = new DateTime();
bool flag = DateTime.TryParse("长期", out dt1);
if (flag)//如果转换成功
{

}
else//不成功则单独处理
{

}

[解决办法]
将该字段类型写成varchar就不会错了
[解决办法]
引用:
Quote: 引用:

refer:
DateTime dt1 = new DateTime();
bool flag = DateTime.TryParse("长期", out dt1);
if (flag)//如果转换成功
{

}
else//不成功则单独处理
{

}


不是这样的,是在读excel的时候就报错了。填不进dataset

 


private DataSet GetExcelDataSet()
{
try
{
_ExcelConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + _FileName + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'";
OleDbConnection OleConn = new OleDbConnection(_ExcelConn);
OleConn.Open();
String sql = "SELECT * FROM [Sheet1$]";//可是更改Sheet名称,比如sheet2,等等

OleDbDataAdapter OleDaExcel = new OleDbDataAdapter(sql, OleConn);
DataSet OleDsExcle = new DataSet();
OleDaExcel.Fill(OleDsExcle, "Sheet1");
OleConn.Close();
return OleDsExcle;
}
catch (Exception err)
{
MessageBox.Show("数据绑定Excel失败!失败原因:" + err.Message, "提示信息",
MessageBoxButtons.OK, MessageBoxIcon.Information);
return null;
}
}


楼主试试,这个函数能不能读取excel数据
[解决办法]
如果上面的代码可以读取成功,那下一步可参照1楼的容错方式来处理数据。
祝好运

读书人网 >asp.net

热点推荐