解决:导出excel身份证号码显示为科学计数法

法一:加入特殊字符:

  如,在身份证号码前后加入中括号,示例:[170621198310974682]

法二:在单元格中加入样式

    Str="<table   border=1><tr><td   align='center'   height='100'   vlign='center'   style="vnd.ms-excel.numberformat:@">999999999999999999999999999</td>

关于法二具体示例,可以参考:http://dotnet.aspx.cc/article/8a4cbf47-b888-4832-3389-ed3a3a3c8aab/read.aspx

在我们把DataGrid上的数据导入到Excel的时候,如果遇到比较长的数字字符串,比如身份证号码,就会在Excel里当成数字看待,并转换成科学计数法的格式,造成数据的丢失,下面这个方法就解决了这个问题,并示例如何进行其它的格式化。

查看例子

OutPutExcel.aspx

Code

OutPutExcel.aspx.cs

Code
原文地址:https://www.cnblogs.com/dudu837/p/2170094.html