解决从Excel导入数据库,导入到DataTable时数据类型发生变化的问题(如数字类型变成科学计数法,百分数变成小数)

做项目的时候,C#读取Excel数据到DataTable或者DataSet,设断点查看DataTable,发现Excel的显示为较长位数数字的字段如0.000012在DataTable中显示为科学计数法1.2E-05,而百分数如143%在DataTable中显示为1.43。可是我想Excel中显示的是什么数据,读取到DataTable或者DataSet后与Excel中完全一致,解决办法如下:

1)打开要导入的EXCEL,把所有数据全选中(Ctrl+A)----复制(Ctrl+C);

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

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

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

5)完成以上操作后,Excel中的所有数据都以文本格式存储,再进行导入就没有问题了。

说明:记事本有清除内容格式的作用,字体格式除外。

参考文档:http://blog.csdn.net/hcf_force/article/details/7824058

posted on 2017-05-24 14:31  邪心魔佛一页书  阅读(1363)  评论(0编辑  收藏  举报