日期:2014-05-16  浏览次数:20514 次

解决了从Excel导入数据库时,数字类型在导入到DataSet时变成科学记数法

从Excel读取成DataSet时,打开DataSet对像一看,惨了,我的数字类型的全变成了科学记数法的了,

一开始听网上人家说,使用XLS单元格文本类型,读取进去DataSet果然有效,但是据客户反应,导入工程BOM的时候,工作量非常大,这程办法明显增加了工作量,

于是今天再扒开代码分析,发现惊喜,当下断取DataSet中的单元格的时候直接输出,发现DataSet中的科料记数法自动转换回来了,再使用如:row["Usage"].ToString()的时候发现输入的结果

是使用科料记数法的形式显示,

但当我使用Convert.ToDecimal(row["Usage"])).ToString() 结果正是我想要的显示方式,其中怎么回事,心中自然明白,

EXCEL导入BOM,数字出现科学记数法,造致无法导入,解决方法如下:

 

1/打开要导入的EXCEL,Bom文档,把所有BOM数据全选中(Ctrl+A)----复制(Ctrl+c)

 

2/新建一个记事本文件,打开它,粘贴上去(Ctrl+v),

 

3/返回打开的EXCEL Bom文档,把里面的的数据全部删除,后全选中(Ctrl+A)并右键选中’设置单元格格式’----点’数字’-----文本’ -------确定退出对话框,

 

4/然后把打开的记事本内所有数据粘贴到Excel档中保存,此时会在数据单元格左上角出现很多小三角形,

 

5/完成以上操作后可进行导入