日期格式私人定制——SimpleDateFormat

  【前言】  

  最近项目需要特殊的日期格式,又恰好是String类型的,以前都没怎么用到SimpleDateFormat这个类去格式化日期,脑子里蹦出来的思路就是先把Date给toString了,然后慢慢切割字符串!天呐,这么不科学的方法都有。翻翻笔记,发现可用用SimpleDateFormat来处理,在这里就对这个类做个使用总结吧!

  【先把总结帖出来】

  在SimpleDateFormat里面,字母有特殊的意义,比如说说 "年——yyyy","月——mm",所以记住这些映射关系是很有必要的。下面总结出常用的映射关系:

意思 符号
公元 G
中文的星期几 EEE
中文的月份 MMM
简写的年份,如14年 yy
上午   a
普通数字日期 yyyy:mm:dd ‘at‘ hh:mm:ss

  

效果 对应的格式
2014.08.02 公元 at 10:10:23 CST yyyy.MM.dd G ‘at‘ HH:mm:ss z
   
星期六, 八月 2, ‘14 EEE, MMM d, ‘‘yy
   
10:10 上午 h:mm a
   
10:10 上午, CST K:mm a, z
   
2014.08.02 公元 at 10:10:23 CST yyyy.MM.dd G ‘at‘ HH:mm:ss z
   
02014.八月.02 公元 10:10 上午 yyyyy.MMMMM.dd GGG hh:mm aaa
   
星期六, 2 八月 2014 10:10:23 +0800 EEE, d MMM yyyy HH:mm:ss Z
   
140802101023+0800 yyMMddHHmmssZ
   
2014-08-02T10:10:23.164+0800 yyyy-MM-dd‘T‘HH:mm:ss.SSSZ

  【使用demo】

 1 public class Test {
 2
 3      public static void testSiampleDateFormat(){
 4           Date date = new Date();
 5
 6           SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy.MM.dd G ‘at‘ HH:mm:ss z");
 7           String s1 = simpleDateFormat1.format(date);
 8           System.out.println("yyyy.MM.dd G ‘at‘ HH:mm:ss z-----------------"+s1);
 9
10           SimpleDateFormat simpleDateFormat2 = new SimpleDateFormat("EEE, MMM d, ‘‘yy");
11           String s2 = simpleDateFormat2.format(date);
12           System.out.println("EEE, MMM d, ‘‘yy-----------------"+s2);
13
14           SimpleDateFormat simpleDateFormat3 = new SimpleDateFormat("h:mm a");
15           String s3 = simpleDateFormat3.format(date);
16           System.out.println("h:mm a-----------------"+s3);
17
18           SimpleDateFormat simpleDateFormat4 = new SimpleDateFormat("K:mm a, z");
19           String s4 = simpleDateFormat4.format(date);
20           System.out.println("K:mm a, z-----------------"+s4);
21
22           SimpleDateFormat simpleDateFormat5 = new SimpleDateFormat("yyyy.MM.dd G ‘at‘ HH:mm:ss z");
23           String s5 = simpleDateFormat5.format(date);
24           System.out.println("yyyy.MM.dd G ‘at‘ HH:mm:ss z-----------------"+s5);
25
26           SimpleDateFormat simpleDateFormat6 = new SimpleDateFormat("yyyyy.MMMMM.dd GGG hh:mm aaa");
27           String s6 = simpleDateFormat6.format(date);
28           System.out.println("yyyyy.MMMMM.dd GGG hh:mm aaa-----------------"+s6);
29
30           SimpleDateFormat simpleDateFormat7 = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss Z");
31           String s7 = simpleDateFormat7.format(date);
32           System.out.println("EEE, d MMM yyyy HH:mm:ss Z-----------------"+s7);
33
34           SimpleDateFormat simpleDateFormat8 = new SimpleDateFormat("yyMMddHHmmssZ");
35           String s8 = simpleDateFormat8.format(date);
36           System.out.println("yyMMddHHmmssZ-----------------"+s8);
37
38           SimpleDateFormat simpleDateFormat9 = new SimpleDateFormat("yyyy-MM-dd‘T‘HH:mm:ss.SSSZ");
39           String s9 = simpleDateFormat9.format(date);
40           System.out.println("yyyy-MM-dd‘T‘HH:mm:ss.SSSZ-----------------"+s9);
41          }
42
43     public static void main(String[] args) {
44
45         testSiampleDateFormat();
46     }
47 }

【 结果打印出】

1 yyyy.MM.dd G ‘at‘ HH:mm:ss z-----------------2014.08.02 公元 at 10:10:23 CST
2 EEE, MMM d, ‘‘yy-----------------星期六, 八月 2, ‘14
3 h:mm a-----------------10:10 上午
4 K:mm a, z-----------------10:10 上午, CST
5 yyyy.MM.dd G ‘at‘ HH:mm:ss z-----------------2014.08.02 公元 at 10:10:23 CST
6 yyyyy.MMMMM.dd GGG hh:mm aaa-----------------02014.八月.02 公元 10:10 上午
7 EEE, d MMM yyyy HH:mm:ss Z-----------------星期六, 2 八月 2014 10:10:23 +0800
8 yyMMddHHmmssZ-----------------140802101023+0800
9 yyyy-MM-dd‘T‘HH:mm:ss.SSSZ-----------------2014-08-02T10:10:23.164+0800

日期格式私人定制——SimpleDateFormat

时间: 2024-08-27 07:55:33

日期格式私人定制——SimpleDateFormat的相关文章

java日期格式大全 format SimpleDateFormat

/**    * 字符串转换为java.util.Date<br>    * 支持格式为 yyyy.MM.dd G 'at' hh:mm:ss z 如 '2002-1-1 AD at 22:10:59 PSD'<br>    * yy/MM/dd HH:mm:ss 如 '2002/1/1 17:55:00'<br>    * yy/MM/dd HH:mm:ss pm 如 '2002/1/1 17:55:00 pm'<br>    * yy-MM-dd HH:

Date类,时间和日期格式类

Date类:构造一个反应当前时间的实例.         Date s=new Date(); System.out.println(s); 打印变量s可得到计算机当前时间,可具体到时间单位'秒'. long starttime=System.currentTimeMillis(); long endtime=System.currentTimeMillis(); starttime与endtime会统计一段执行时间,这个时间段就是两个表达式之间的代码所执行的时间.这样可以计算当前代码执行的效率

SimpleDateFormat日期格式(浅面)

java中使用SimpleDateFormat类的构造函数SimpleDateFormat(String str)构造格式化日期的格式, 通过format(Date date)方法将指定的日期对象格式化为指定格式的字符串. SimpleDateFormat构造函数中字符串的格式,以及各部分代表的含义: import java.text.SimpleDateFormat; import java.util.Date; public class test{ public static void ma

使用SimpleDateFormat验证日期格式

Java中日期格式的验证有很多方式,这里介绍用 java.text.SimpleDateFormat 来实现时间验证的一种简单方式.首先我们要知道 SimpleDateFormat 对象有一个方法 void setLenient(boolean lenient) ,此方法传入一个Boolean值,表示是否是宽松的验证.当传入false时候表示验证是严格的.利用这一点我们就可以简单实现一个严格的时间格式验证.实现代码如下: public static boolean validDateTimeSi

SpringMVC初始化参数绑定--日期格式

一.初始化参数绑定[一种日期格式] 配置步骤: ①:在applicationcontext.xml中只需要配置一个包扫描器即可 <!-- 包扫描器 --> <context:component-scan base-package="cn.happy.controller"></context:component-scan> ②:在处理器类中配置绑定方法  使用@InitBinder注解 在这里首先注册一个用户编辑器 参数一为目标类型   proper

Java通过jxl解析Excel文件入库,及日期格式处理方式 (附源代码)

JAVA可以利用jxl简单快速的读取文件的内容,但是由于版本限制,只能读取97-03  xls格式的Excel. 本文是项目中用到的一个实例,先通过上传xls文件(包含日期),再通过jxl进行读取上传的xls文件(文件格式见下user.xls),解析不为空的行与列,写入数据库. 文件user.xls格式为: 下面来看代码实例演示: 一.前端jsp页面(本来内容很多,这里精简了) <%@ page language="java" contentType="text/htm

eclipse/MyEclipse 日期格式、注释日期格式、时区问题

eclipse/MyEclipse 日期格式.注释日期格式.时区问题 在eclipse/MyEclipse中,如果你的注释或是运行System.out.print(new java.util.Date());的时候,发现时间和系统的时间差8个小时. 那么就可以说明,你的时区和当前时区不对应.我们中国用的时区是Asia/Shanghai,你的差8小时应该是东八区的.关于这一点 你不懂可以看看初中地理:D. 解决办法有2种: 1.在你的eclipse/MyEclipse的JVM的jre运行参数中设置

SpringMVC与MyBatis整合之日期格式转换

在上一篇博客<SpringMVC与MyBatis整合(一)——查询人员列表>中遗留了日期格式转换的问题,在这篇记录解决过程. 对于controller形参中pojo对象,如果属性中有日期类型,需要自定义参数绑定.         将请求日期数据串传成 日期类型,要转换的日期类型和pojo中日期属性的类型保持一致. 在上一篇的示例程序中,Person类属性如下: 而测试结果如下: 所以自定义参数绑定将日期串转成java.util.Date类型.需要向处理器适配器中注入自定义的参数绑定组件. 添加

利用BusyBox ~私人定制 My LINUX~

前言 我在今天在这里跟大家详细地探讨一下Linux系统的定制过程和实现例如.用户能够远程登录:和Nginx能够稳定地运行在我们私人定制的LINUX系统上.一步一步从头开始定制属于我们自己的系统. 正文    首先我们先来简单的介绍一下我们这里定制属于自己的Linux系统的基本元素. 一个定制的linux内核+一个定制的busybox就可以定制一个小型的Linux操作系统了,安装Dropbear和Nginx,Linux的组成 部分包括内核空间和用户空间.而用户空间其实就是根文件系统.用户空间中又包