C#保存数据到Excel,为什么身份证号显示不正常?

SQLServer2005数据库表里面涉及的身份证字段是char(18),用DataGridView能正常显示,但是点击保存按钮保存成Excel时,身份证号不能正常显示,... SQL Server2005数据库表里面涉及的身份证字段是char(18),用DataGridView能正常显示,但是点击保存按钮保存成Excel时,身份证号不能正常显示,但是最后一位是X的就能全部显示,为什么呢?设置单元格格式也不行,后面几位全是0,怎么解决呢? 展开
 我来答
一点设计演示
高粉答主

推荐于2016-04-26 · 职场/教育各类模板,衷于原创
一点设计演示
采纳数:874 获赞数:83605

向TA提问 私信TA
展开全部

需要更改身份证的数据格式。

1.问题展示。电子表格中输入身份证号码以后,出现4.3102E+17。

2.原因分析。出现此问题的原因是单元格式没有设置好,软件认为是个很大的数字,所以采用了科学记数法来显示。特别要注意的是,18位数字的身份证科学记数法以后,最后的三位数字都变成了000。因此不要偷懒,以为不改单元格式也可以查看到身份证号码。

3.打开电子表格文件以后,选中身份证的整列,点右键出现“设置单元格格式”选项。

4.点“设置单元格格式“以后进入”数字“选项框,从中选中”文本“后点确定。

5.此时,再次输入身份证号码,将会正确显示。并且在该单元格左上角有个绿色小三角形的标记,表示文本格式已经设置好。

6.如果不需要对整列设置,只对某一个单元格进行设置,方法也是样。

7.身份证号码位数多,需要将整列拉宽才能完全显示。拉宽的方法是,将鼠标停留在需要拉宽列(最上面)的界限处,出现一个往两边的箭头标记时就可以拉宽和缩小操作。

N多的肉
推荐于2020-03-08 · TA获得超过3541个赞
知道小有建树答主
回答量:2260
采纳率:34%
帮助的人:614万
展开全部
最后一位是X的,系统认为是一串字符,末位是数字的,系统将身份证号认为是一串数字(数值很大的数字),所以采用科学计数法将其表示为 3.20683E+17的形式

修改Excel单元格的格式为文本型就可以正常显示了
追问

改成文本型后还是这个样子,只不过左对齐了

追答
是你在改的时候,系统又将 3.028E+17作为了基础字符串,所以你改为文本型后,仍然是3.028E+17

http://javacrazyer.iteye.com/blog/894758,博主写的非常详细,从原理到解决方法都有了
思路还是那样,设置单元格格式为“文本型”
下面直接阐述下真正的解决方法:

1 //创建workBook
2 HSSFWorkbook wb = new HSSFWorkbook();
3 //创建一个样式
4 HSSFCellStyle cellStyle = wb.createCellStyle();
5 //创建一个DataFormat对象
6 HSSFDataFormat format = wb.createDataFormat();
7 //这样才能真正的控制单元格格式,@就是指文本型,具体格式的定义还是参考上面的原文吧
8 cellStyle.setDataFormat(format.getFormat("@"));
9
10 //具体如何创建cell就省略了,最后设置单元格的格式这样写
11 cell.setCellStyle(cellStyle);
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-06-04
展开全部
存成字符串格式就好啦,或者你导入到Excel时,身份证号前都加一个 单引号 ' 就可以正常显示了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ExcelOffice
2014-06-04 · TA获得超过570个赞
知道小有建树答主
回答量:1583
采纳率:0%
帮助的人:739万
展开全部
超过位数了,必须先把单元格格式改为文本
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
凌海樱
2014-06-04 · TA获得超过401个赞
知道小有建树答主
回答量:445
采纳率:100%
帮助的人:248万
展开全部
将身份证号的数据类型改为文本,并将显示身份证号的那个单元格的数据格式设置为文本
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式