Excel导出问题(导出时不去掉前面的0)(转)
最简单的方法是:在数字前面加'符号。即代码里添加: "'"
以下均是网上搜集到的其他解答:
一.代码如下:
style="mso-number-format:'/@';"
现在说明一下;一般在我在做ASP导出EXCEL页面时在开头加上如下代码:
<% response.ContentType ="application/vnd.ms-excel" Response.AddHeader "content-Disposition","filename=导出后的文件名称.xls;attachment;" Response.Flush %>
这部份在网上都有然后是我的代码了: style="mso-number-format:'/@';"
这段代码是把所在<td>或<tr>内的数据格式化为文本,我不知道HTML是否支持这个STYLE,但EXCEL是一定支持的,要不然我就不可能解决问题了,希望大家都能解决一直以来无法解决的问题吧可以写段代码做一下测试
<% response.ContentType ="application/vnd.ms-excel" Response.AddHeader "content-Disposition","filename=导出后的文件名称.xls;attachment;" Response.Flush %> <table> <tr> <td style="mso-number-format:'/@';">0001</tr> <td>0002</td> </tr> <table>
出来的数据将会是:
0001 2
二.在简易的Jsp导出html版本的execl中所有的文件导出默认都是文本文件,这给业务人员带来了一些不必要的操作,建议使用下面的方法,可以调整导出的格式类型.
- mso-number-format:"0" NO Decimals
- mso-number-format:"0/.000" 3 Decimals
- mso-number-format:"/#/,/#/#0/.000" Comma with 3 dec
- mso-number-format:"mm//dd//yy" Date7
- mso-number-format:"mmmm/ d/,/ yyyy" Date9
- mso-number-format:"m//d//yy/ h/:mm/ AM//PM" D -T AMPM
- mso-number-format:"Short Date" 01/03/1998
- mso-number-format:"Medium Date" 01-mar-98
- mso-number-format:"d/-mmm/-yyyy" 01-mar-1998
- mso-number-format:"Short Time" 5:16
- mso-number-format:"Medium Time" 5:16 am
- mso-number-format:"Long Time" 5:16:21:00
- mso-number-format:"Percent" Percent - two decimals
- mso-number-format:"0%" Percent - no decimals
- mso-number-format:"0/.E+00" Scientific Notation
- mso-number-format:"/@" Text
- mso-number-format:"/#/ ???//???" Fractions - up to 3 digits (312/943)
- mso-number-format:"/0022£/0022/#/,/#/#0/.00" £12.76
- mso-number-format:"/#/,/#/#0/.00_ /;/[Red/]/-/#/,/#/#0/.00/ "
- 2 decimals, negative numbers in red and signed
- (1.56 -1.56)
- 用法举例:
- 当我们用<%@page contentType="application/vnd.ms-excel; charset=UTF-8"%>的方法导出jsp文件为excel时,如果导出的数据中有数字以0开头,则该0会被省略,为了保留这个处于首位的0,可以在表格的style中加入:
- style='mso-number-format:"/@";'
- 这样的话,导出的该表格中首位为0的数字就会将该0保留啦!
三.在asp.net中导出excel 中比较通行的做法是 response.contenttype = "application/vnd.ms-excel";
然后直接向里面扔 html 的table
但是有中文的时候 老出现乱码,有很多解决方案,但都不能通盘解决,我在蓝色小铺上发现这篇文章方法不错,借鉴
就是在 输出html两头输出
response.write("<html><head><meta http-equiv=content-type content=/"text/html; charset=utf-8/">");
response.write("</body></html>");
这样就解决了,究其原因,大概是 excel读到 utf-8自己会改变字符集读取方式吧,其实文件本身改变为unicode字符集就可以读取了,但不知道response怎么输出unicode
另外 蓝色小铺上的同学问到 怎么 0001234输出 就变成了 1234 了,其实这个是excel搞鬼,你看输出的源文件就明白了,解决方案是老夫的独门特技,可惜蓝色小铺注册不了,台湾同胞还是不把咱当同胞阿,注册随机码的图片总是个叉叉
解决方法如下
碰到 0开头的字符串输出时,td 为
string.format("<td style='mso-number-format:general;mso-number-format:/"{1}/"'>{0}</td>", dt.rows[j][i], @"/@");
Excel导出问题(导出时不去掉前面的0)(转)的更多相关文章
- PL/SQL导出到execl中,数据前面的0发生丢失的解决办法
ERR出现的场景再现: 使用 PL/SQL导出按钮,选择‘CSV文件’,保存为1.csv,后用execl打开,复制到VuGen中作为login脚本的参数化文件username. ERR及发现过程: 在 ...
- robotframework之去除空格、去掉前面的0、增加空格换行符的方法,两个字符之间的拼接
1.去除空格 A)若需要去除两个拼接字符之间的空格,可以使用robotframework中的关键词Catenate,需要注意的是SEPARATOR=一定需要大写 B)若在一个字符串中存在空格,且需要去 ...
- oracle数字返回为字符串时小时点前面的0缺失的问题
SELECT 0.001||'' from dual UNION SELECT TO_CHAR(0.001||'','fm999990.99999') from dual;
- jquery获取value值时将数字型字符串前面的0自动截取处理方法
<li class="cwhite" value="02" id="02" onclick="getQuestionList ...
- Datagridview中数字格式列 不显示小数点前面的0
用代码设置DataGridView中某列为数字格式,但当小数为0.*的时候,前面的0却不显示.只显示.*. 看网上有说: 调整本地设置,控制面板-区域和语言选项,在弹出框的区域选项卡中,选择自定义,在 ...
- 导出excel时设置单元格格式(避免类似0100的数字丢失前面的0)
<td style="vnd.ms-excel.numberformat:@;"><s:property value="accountCode" ...
- Excel Skill (1) -- 判断时如何去掉框里的空格
使用命令 TRIM 说明: Purpose. Remove extra spaces from text. Text with extra spaces removed. =TRIM (text) t ...
- c#导出数据到csv文本文档中,数据前面的0不见了解决方法
((char)(9)).ToString() + dataRow["FUserName"].ToString().Trim() + "\t",
- wp_list_categories如何去掉前面的categories
我们可以通过<?php wp_list_categories(); ?>来调用所有分类,但是在前面会出现一个categories,对强迫症患者来说就是钉子,那就把它去掉吧,顺便让自己更熟悉 ...
随机推荐
- PHP页面跳转几种实现技巧
PHP被许多程序员用来开发WEB的首选语言.在实际开发中,网站的各项功能都可以通过PHP语言的编写来满足,比如PHP页面跳转这一方法. 探讨PHP变量解析顺序如何获取提交数据 深入解读PHP运行机制 ...
- python urllib2的proxyhandler
1. 再a方法中新建了个opener,使用了代理: proxydict = {} proxydict['http'] = "http://%s:%s"%(ip,port) #pri ...
- jQuery deferred when用法
一.什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作.其中,既有异步的操作(比如ajax读取服务器数据),也有同步的操作(比如遍历一个大型数组),它们 ...
- usb协议分析-设备描述符配置包-描述符
/* usb协议分析仅供大家参考---设备描述符配置包,设备描述符, 地址设置, 配置描述符, 字符串描述符 */ /* -1- usb设备描述符配置包 */ typedef struct _USB_ ...
- SQLServer2008 行转列3
with a as ( select 日期,学号,名字, '语文' as 科目,语文 as 分数 from tsco union all select 日期,学号,名字, '数学' as 科目,数学 ...
- 【转】Android Launcher研究 (一)
这份源码是基于2.1的launcher2,以后版本虽有变化,但大概的原理一直还是保留了. 一.主要文件和类 1.Launcher.java:launcher中主要的activity. 2.DragL ...
- UESTC 1074 秋实大哥搞算数 栈模拟
秋实大哥搞算数 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit S ...
- 多个电脑共用一个ssh
比如我们有多个设备,但不想每个设备上生成一个ssh key,然后去github或其他网站上添加,那样的话,ssh key会比较多,搞起来会比较乱,所以我们想在不同的设备上使用同一个ssh. 做法是,我 ...
- Hbase源码分析:Hbase UI中Requests Per Second的具体含义
Hbase源码分析:Hbase UI中Requests Per Second的具体含义 让运维加监控,被问到Requests Per Second(见下图)的具体含义是什么?我一时竟回答不上来,虽然大 ...
- 一、导入、导出远程Oracle数据库
一.导入.导出远程Oracle数据库 其语法实示例如下: imp/exp [username[/password[@service]]] 其中service是服务实例名,关于如何创建服务实 ...