首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

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

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

使用数据连接字符串读取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楼的容错方式来处理数据。
祝好运

热点排行