导出excel表格出现科学计数法处理方法

 代码如下 复制代码

response.setContentType("application/vnd.ms-Excel; charset=gb2312");

response.setHeader("Content-disposition","attachment;filename=excel文件名.xls");

但是经常遇到会把身份证等数字比较长的数据改成科学计数法来显示。

用IE的用户,如果一个html页面有table的话,可以把table导出到excle文件里面,但是经常遇到会把身份证等数字比较长的数据改成科学计数法来显示。很是头疼。
有说加个单引号可以解决,但是我这里测试,显示和导出的结果都有单引号。效果不好。
同事找到一个解决方案比较好。

在html页面里面加上一段css
然后在出现问题的字段应用这种style就可以了。
测试通过。神奇

 代码如下 复制代码

<style type="text/css">
<!--
td {
    background-color: #FFFFFF;
}
 
.txt
    {padding-top:1px;
    padding-right:1px;
    padding-left:1px;
    mso-ignore:padding;
    color:black;
    font-size:11.0pt;
    font-weight:400;
    font-style:normal;
    text-decoration:none;
    font-family:宋体;
    mso-generic-font-family:auto;
    mso-font-charset:134;
    mso-number-format:"@";
    text-align:general;
    vertical-align:middle;
    mso-background-source:auto;
    mso-pattern:auto;
    white-space:nowrap;}
-->
</style>

原来css还有这种功效啊,把上面代码放在要导入的html页面中就解决的了这些办法。

时间: 2024-11-08 21:32:53

导出excel表格出现科学计数法处理方法的相关文章

Excel2010表格数字变科学计数法怎么办?

  1.打开Excel表格,在单元格中输入长数字我们会发现显示的还是科学计数法 2.这个时候我们可以右键单元格然后点击"设置单元格格式",在设置单元格格式里选择"文本"然后点击确定. 3.这样我们在单元格里输入的数字就是正常显示的啦. 4.除此之外,我们在还可以在输入的数字前加一个'单引号,这个也能保证输入的数字显示纯数字.不会显示成科学计数法

MyXls导excel遇到长数字,自动变成科学计数法了,能不能有办法自动生成字符串型?

问题描述 MyXls导excel遇到长数字,自动变成科学计数法了,能不能有办法自动生成字符串型?求教了 解决方案 解决方案二:在特殊列的数据前加个符号就可以了,比如加个'解决方案三:我也试过,但是导出的excel会显示单引号',能不能自动隐去这个单引号?

关于PHPExcel导出Excel时身份证,数字会导出为科学计数的处理方法

原文:关于PHPExcel导出Excel时身份证,数字会导出为科学计数的处理方法 上次在开发一个项目时,用到PHPExcel导出数据,其中有导出身份证等长串数字时导出的Excel中显示为科学计数方式. 这种显示很不人性化而且量多了修改起来也很麻烦. 这是因为Excel处理数字里默认数字太长会转化为科学计数法,处理起来很简单,我们在导出时把数字转为字符串,Excel就不会识别为数字了,也就不会显示为科学计数方式. 我的处理方式是在变量后面加个空格,简单方便. $usercode .= ' '; $

PHP导出csv,身份证出现科学计数法的问题

其实这个问题跟用什么语言导出csv文件没有关系.Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科学技术费表示,还会只保留高15位,其他位都变0. $idcard = "\t".$idcard; 顺便看到如果是phpexcel导出的话,把"\t"换成" "即可(双引号直接有个空格)

Excel身份证号输入或复制后粘贴变科学计数法

  经常有同事向我请教有关如何在Excel中输入身份证号码并避免以科学计数法显示的问题,如输入4690071000102334结果变成4.69007E+15 . 总结一下解决该问题的方法如下: 一.如果是手工输入,有两种方法, 方法1:设置单元格格式为文本 第一步: 先设置身份证号列 为文本格式.具体操作:选中列,右键->"设置单元格格式"->"数字"->选择"文本" 第二步:手工输入身份证号即可. 方法2: 在输入身份证号之前

sqlite数据导出为csv格式19位数字是科学计数法怎么解决

问题描述 sqlite数据导出为csv格式19位数字是科学计数法怎么解决 如题,用sqlite存储了很多数据,写了个程序导出数据,学号为19位的数字,导出时就会出现科学计数法,请问这个问题该怎么解决 解决方案 你把csv用wxcel查看的?如果是,你把那一列拓宽点看看.就会还原成原来数字

格式化-java double 科学计数法 的转换

问题描述 java double 科学计数法 的转换 测试题. 要求0.00000000004 这个字符串格式化为 4.00e-11 这样的格式. 同excel表格中的展示一样. demo BigDecimal c = new BigDecimal("0.000000004", new MathContext(0, RoundingMode.HALF_UP));// 构造BigDecimal时指定有效精度 System.out.println(c..toEngineeringStrin

VBA中让长数据不显示为科学计数法

在VBA中做导出到Excel操作时,如果碰到长数字,那么导出后会默认显示为科学计数法,解决方法如下: ExcelWorkSheet.Cells(1, 6) = "'" + 111111111111111 在输出的数字前面加上一个  '   即可.

怎么把科学计数法转换成普通格式

问题描述 在导入EXCEL时候,读取到身份证是科学计数法,怎么才转换成普通类型 解决方案 解决方案二:先在EXCEL中将该列的格式设置为文本.解决方案三:程序理怎么转换?解决方案四:在你输入的文字前加个'~'看看