1. package com.util;
  2. import java.text.DecimalFormat;
  3. import java.text.ParseException;
  4. import java.text.SimpleDateFormat;
  5. import java.util.Date;
  6. /**
  7. * 功能更强大的格式化工具类
  8. */
  9. public class FormatUtils {
  10. private static SimpleDateFormat second = new SimpleDateFormat(
  11. "yy-MM-dd hh:mm:ss");
  12. private static SimpleDateFormat day = new SimpleDateFormat("yyyy-MM-dd");
  13. private static SimpleDateFormat detailDay = new SimpleDateFormat("yyyy年MM月dd日");
  14. private static SimpleDateFormat fileName = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss");
  15. private static SimpleDateFormat tempTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  16. private static SimpleDateFormat excelDate = new SimpleDateFormat("yyyy/MM/dd");
  17. /**
  18. * 格式化excel中的时间
  19. * @param date
  20. * @return
  21. */
  22. public static String formatDateForExcelDate(Date date) {
  23. return excelDate.format(date);
  24. }
  25. /**
  26. * 将日期格式化作为文件名
  27. * @param date
  28. * @return
  29. */
  30. public static String formatDateForFileName(Date date) {
  31. return fileName.format(date);
  32. }
  33. /**
  34. * 格式化日期(精确到秒)
  35. *
  36. * @param date
  37. * @return
  38. */
  39. public static String formatDateSecond(Date date) {
  40. return second.format(date);
  41. }
  42. /**
  43. * 格式化日期(精确到秒)
  44. *
  45. * @param date
  46. * @return
  47. */
  48. public static String tempDateSecond(Date date) {
  49. return tempTime.format(date);
  50. }
  51. public static Date tempDateSecond(String str) {
  52. try {
  53. return tempTime.parse(str);
  54. } catch (ParseException e) {
  55. e.printStackTrace();
  56. }
  57. return new Date();
  58. }
  59. /**
  60. * 格式化日期(精确到天)
  61. *
  62. * @param date
  63. * @return
  64. */
  65. public static String formatDateDay(Date date) {
  66. return day.format(date);
  67. }
  68. /**
  69. * 格式化日期(精确到天)
  70. *
  71. * @param date
  72. * @return
  73. */
  74. public static String formatDateDetailDay(Date date) {
  75. return detailDay.format(date);
  76. }
  77. /**
  78. * 将double类型的数字保留两位小数(四舍五入)
  79. *
  80. * @param number
  81. * @return
  82. */
  83. public static String formatNumber(double number) {
  84. DecimalFormat df = new DecimalFormat();
  85. df.applyPattern("#0.00");
  86. return df.format(number);
  87. }
  88. /**
  89. * 将字符串转换成日期
  90. *
  91. * @param date
  92. * @return
  93. * @throws Exception
  94. */
  95. public static Date formateDate(String date) throws Exception {
  96. return day.parse(date);
  97. }
  98. /**
  99. * 将字符日期转换成Date
  100. * @param date
  101. * @return
  102. * @throws Exception
  103. */
  104. public static Date parseStringToDate(String date) throws Exception {
  105. return day.parse(date);
  106. }
  107. public static String formatDoubleNumber(double number) {
  108. DecimalFormat df = new DecimalFormat("#");
  109. return df.format(number);
  110. }
  111. }

功能更强大的格式化工具类 FormatUtils.java的更多相关文章

  1. 发一个比trace功能更强大debug工具,MonterDebugger

    经常看到兄弟说trace不出东西啊,这样给你调试会带来很多不便:加入说我们需要将运行时的debug信息和之前某个版本的进行比对:又加入说我们需要在运行时通过debug动态调整显示对象的属性:查看当前整 ...

  2. 让Docker功能更强大的10个开源工具

    让Docker功能更强大的10个开源工具 更好的管理.Web前端程序.更深入地了解容器应用程序,Docker生态系统正在迅速发展,这还得归功于其充满活力的开源社区. 软件项目的成功常常根据其催生的生态 ...

  3. pandas的筛选功能,跟excel的筛选功能类似,但是功能更强大。

    Select rows from a DataFrame based on values in a column -pandas 筛选 https://stackoverflow.com/questi ...

  4. 比 Navicat 还要好用、功能更强大的工具!

    DBeaver 是一个基于 Java 开发,免费开源的通用数据库管理和开发工具,使用非常友好的 ASL 协议.可以通过官方网站或者 Github 进行下载. 由于 DBeaver 基于 Java 开发 ...

  5. 一个比 Nginx 功能更强大的 Web 服务器

    公众号关注 「开源Linux」 回复「学习」,有我为您特别筛选的学习资料~ Caddy 简介 Caddy 是一个 Go 编写的 Web 服务器,类似于 Nginx,Caddy 提供了更加强大的功能,随 ...

  6. Excel Interactive View - 让页面表格的功能更强大

    MS Office Excel Services提供了一个非常强大的功能,允许你只需要在页面上添加非常少量的JS references,就可以让你在页面上将表格的内容以Excel图表的方式呈现.这里是 ...

  7. 让ecshop编辑器功能更强大

    ecshop后台的商品编辑和文章编辑使用的是FCKEDITOR 编辑器, 这个FCKEDITOR的工具条(toolbar)是可以自定义的,ECSHOP默认使用的是 normal ,属于中档功能, 下面 ...

  8. C++ folly库解读(三)Synchronized —— 比std::lock_guard/std::unique_lock更易用、功能更强大的同步机制

    目录 传统同步方案的缺点 folly/Synchronized.h 简单使用 Synchronized的模板参数 withLock()/withRLock()/withWLock() -- 更易用的加 ...

  9. 更强大的trim功能,过滤汉字等

    第一种方法:通过php自带的函数 <?php /* trim 去除一个字符串两端空格, rtrim 是去除一个字符串右部空格, ltrim 是去除一个字符串左部空格. */ ?> < ...

随机推荐

  1. Azure Automation:存储帐户之间blob拷贝

    在两个存储帐户之间进行blob拷贝,在客户端,使用Azue PowerShell脚本, 用存储帐户上下文(New-AzureStorageContext)来获取某个StorageAccount中的Co ...

  2. 使用Office 365 试用账户 体验Office 365功能

    首先,需要申请Office 365 Enterprise E3版本的试用账户. 在浏览器中,输入以下地址,然后回车: http://products.office.com/en-us/business ...

  3. Core Java Volume I — 3.1. A Simple Java Program

    Let’s look more closely at one of the simplest Java programs you can have—one that simply prints a m ...

  4. python 文件操作,seek, tell, name...

    可以设置文件当前位置偏移 fileObject.seek(offset [, whence]) offset 文件的读/写指针位置 whence 可选,默认0,相对于文件开始的位置. 1, 相对于目前 ...

  5. springmvc学习笔记--REST API的异常处理

    前言: 最近使用springmvc写了不少rest api, 觉得真是一个好框架. 之前描述的几篇关于rest api的文章, 其实还是不够完善. 比如当遇到参数缺失, 类型不匹配的情况时, 直接抛出 ...

  6. char类型与Unicode的编码

    Java的char型是非常独特的,占用两个字节,因为Java中char型采用了Unicode编码. 要理解这个问题,我们必须要理解什么是Unicode. 世界上存在着多种编码方式,同一个二进制数字可以 ...

  7. 2016 ACM/ICPC Asia Regional Qingdao Online 1001/HDU5878 打表二分

    I Count Two Three Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  8. CSS 阴影怎么写?

    只有CSS3才zh支持阴影效果,ke可以用如下写法:.shadow {-webkit-box-shadow:1px 1px 3px #292929;-moz-box-shadow:1px 1px 3p ...

  9. SQL Server用户自定义函数

    用户自定义函数不能用于执行一系列改变数据库状态的操作,但它可以像系统 函数一样在查询或存储过程等的程序段中使用,也可以像存储过程一样通过EXECUTE 命令来执行.在 SQL Server 中根据函数 ...

  10. AXIOM解析XML 详细原理

    转自:http://warlaze.blog.sohu.com/58477971.html AXIOM Axis对象模型(AXIOM)是一个XML对象模型,设计用于提高XML处理期间的内存的使用率和性 ...