使用数据连接字符串读取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//不成功则单独处理
{
}
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;
}
}