解决html导出excel时数字被改成科学计数法的问题[转]

【适用范围】IE, JSP

【问题描述和定位】业务需要把一个html页面中的内容导出到excle文件里面,一个常用的方法是在需要导出的 jsp页面中增加:

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

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

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

【解决方案和步骤】

在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>
 
示例:
<TD class="txt" align="center">
<bean:write id="ResultSet" property="VW_SETTLHINT/DEALBILLID"/>
</TD>

你可能感兴趣的:(html,jsp,css,IE,Excel)