2010-09-14 14:13
应用中经常会遇到要从系统或数据库中导出数据平面文件,一般是导出到txt,csv或excel。txt和csv一般用在系统间的数据交换,而 excel一般有较好的显示效果,可以按照一定的模板导出,导出就不用再排版了,使用简单,如果是使用做报表一般都导出excel文件。

但是使用com组件导出到Excel数据很慢,有另一种生成excel文件的方式就是通过html和css快速导出数据同时并能设置样式,使用这种方式有两个优点:1是速度快,2是不需安装excel支持。

  当使用这种方法导出文件时,有时会遇到一个问题,就是导出的Excel经常会把我们的数据自动识别为其他格式,例如只有纯数字的字段在导出到 Excel后会被自动识别为数字格式,而一旦数字超过11位,Excel便会将其以科学计数法的形式来显示,比如身份证号码,带区号的电话号码等。

  解决方法有多种,这里只介绍一种本人认为最好的一种,即使用CSS给出现问题的表格字段(如<TD>)应用mso-number- format属性,用这个属性指定某单元格的数据格式,避免Excel自动转换格式。mso-number-format是Office提供的格式, 如果您将office文档转成HTML就会有这样的标志。MSO表示Microsoft Office。

示例:

<style type="text/css">
.format{
mso-number-format:'\@';
}
</style>

<td Class="format">123456789012345</td>

  在css中加入:mso-number-format定义数据格式,格式可以在excel中查看自定义格式,具体可以参考一下:
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) 

转载于:https://www.cnblogs.com/victor_chou/archive/2011/01/07/1929337.html

mso-number-format相关推荐

  1. Invalid number format for port number

    Invalid number format for port number(链接ORACLE时忘记加端口出现的错误) JspException:org.apache.commons.dbcp.SQLN ...

  2. Invalid number format for port number(链接ORACLE时忘记加端口出现的错误)

    错误:java.sql.SQLException: Invalid number format for port number 原因:连接oracle时端口号错误: 解决: jdbc:oracle:t ...

  3. Oracle报错:IO Error: Invalid number format for port number

    这个原因是因为最后的连接url 应该是斜杠 参考:https://blog.csdn.net/qq_21383435/article/details/100111116

  4. GridView To Excel

    将GridView的内容导出到Excel中 原文来自:http://gridviewguy.com/ArticleDetails.aspx?articleID=197 介绍: 将GridView的内容 ...

  5. 用Format创建格式化对象举例

    1.把数字格式化为货币字符串: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 import java.text.NumberFormat; ...

  6. SAP Fiori globalization实现原理之Number显示的格式原理

    You might observe the same number value but displayed with different format if you log on the same s ...

  7. C# 格式化字符串 String.Format

    格式化日期和数字的字符串经常要用到这个, 就把帮助里面的东西大概整理了一些列在这里了. 下表描述了用来格式化 DateTime 对象的标准格式说明符. 格式说明符 名称 说明 d 短日期模式 显示由与 ...

  8. 269个JavaScript工具函数,助你提升工作效率(下)

    130.blob转file /*** @param { blob } blob* @param { string } fileName*/export const blobToFile = (blob ...

  9. PYTHON编程导论群问题汇总(三)

    Q1: week2-3, Ex-guess my number 在做week2练习:guess my number时遇到一个小问题. 代码已经写好,结果也和给出的答案一样,但是格式有一点不同,如下: ...

  10. 教你用Python进行自然语言处理(附代码)

    原文题目:NLP in Python 翻译: 陈之炎 校对: 和中华 本文共2700字,建议阅读6分钟. 自然语言处理是数据科学中的一大难题.在这篇文章中,我们会介绍一个工业级的python库. 自然 ...

最新文章

  1. vs2008中,在OCX控件中应用doc/view基本步骤
  2. python将列表横着输出来
  3. Git提交到多个远程仓库
  4. php 连续点击事件,javascript设置连续两次点击按钮时间间隔的方法_javascript技巧...
  5. 商汤 AI TECH DAY丨见大咖、拿OFFER、体验AI,一次就够!
  6. BeetleX.Http.Clients V1.5发布
  7. bvp解算器是什么_那些学习了编程的中学生,为什么会更可能成功?
  8. 手脱ACProtect V1.4X(有Stolen Code)之补区段
  9. 从零开始带你部署springboot项目到ubuntu服务器05
  10. mybatis批量删除提示类型错误
  11. OFD电子文档阅读器功能说明
  12. ubuntu20.04 开机速度非常慢
  13. c语言函数定义四要素,C语言函数
  14. PHP 测试页index.php phpinfo 空白问题
  15. 产品经理的六大工作职责
  16. 2018年9月份面试小记
  17. 黑色简洁的PHP短网址短链接生成源码 可在后台添加广告
  18. 一年中的十二个月(英语)分别表示什么意思/
  19. 从零在FPG上实现OFDM(一)
  20. 软件工程-课后讨论题

热门文章

  1. CVPR 2021 Oral | GLEAN: 基于隐式生成库的高倍率图像超分辨率
  2. 解读自监督学习(Self-Supervised Learning)几篇相关paper -
  3. 上科大、腾讯提出Liquid Warping GAN,实现人体动作迁移的新高度!
  4. 干货!Kaggle座头鲸识别落下帷幕,冠军方案解读
  5. linux3.3内核去哪下载,Linux Kernel下载|Linux Kernel v3.18.3 稳定版 - 121下载站
  6. 经典重温:CVPR 2010 What is an object?
  7. 近6年语音合成领域都有哪些论文?
  8. 数学建模之微分方程(符实现例题和MATLAB源码)
  9. 计算机视觉实习面经【微软/阿里/腾讯】
  10. 用于金融时序预测的神经网络:可改善经典的移动平均线策略