首页 > 代码库 > 日期格式私人定制——SimpleDateFormat
日期格式私人定制——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 CST2 EEE, MMM d, ‘‘yy-----------------星期六, 八月 2, ‘143 h:mm a-----------------10:10 上午4 K:mm a, z-----------------10:10 上午, CST5 yyyy.MM.dd G ‘at‘ HH:mm:ss z-----------------2014.08.02 公元 at 10:10:23 CST6 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 +08008 yyMMddHHmmssZ-----------------140802101023+08009 yyyy-MM-dd‘T‘HH:mm:ss.SSSZ-----------------2014-08-02T10:10:23.164+0800
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。