首页 新闻 会员 周边

ado.net读取excel时,数字类型格式变化读取错误,怎么修改呢

0
[已解决问题] 解决于 2012-05-13 21:24

如 123424234234,读取到DataTable中变成了1.23424E+11
方法是这样的 public static DataTable GetDataTableBySheet(string excelFile, string sheetName)      {          string connStr = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;data source={0};Extended Properties='Excel 8.0;HDR=YES;IMEX=1;'"                          , excelFile);          string sql = string.Format("select * from [{0}$]", sheetName);          OleDbConnection cn = new OleDbConnection(connStr);          OleDbCommand cm = new OleDbCommand(sql,cn);          OleDbDataAdapter da = new OleDbDataAdapter(cm);          DataTable dt = new DataTable();          try          {              cn.Open();              da.Fill(dt);              return dt;          }          catch (OleDbException)          {              throw;          }          finally          {              if (cn != null)              {                  cn.Close();              }          }      }

999999999999999的主页 999999999999999 | 初学一级 | 园豆:3
提问于:2011-11-30 22:02
< >
分享
最佳答案
0

同上将数字格式设置成文本的,excel里面可能出现1.23424E+11这样的格式,你可以点击编辑,就变成文本数字了,对于大数据量,就用excel的数据分列操作了

奖励园豆:5
Leaf.Duan | 菜鸟二级 |园豆:230 | 2011-12-10 18:24
其他回答(2)
0

设置下格式嘛

angtianqiang | 园豆:110 (初学一级) | 2011-12-01 09:53
0

将格式设置为文本格式,就可以了。

小小刀 | 园豆:1991 (小虾三级) | 2011-12-01 22:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册