zoukankan      html  css  js  c++  java
  • 日期格式私人定制——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 }
    View Code

         【 结果打印出】

    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
    View Code
  • 相关阅读:
    vuex插件
    axios
    token登录验证
    mysql模糊查询
    Koa2+Mysql搭建简易博客
    正则匹配器
    编码
    Maven学习
    防止重复提交保证幂等的几种解决方案
    策略模式优化if-else
  • 原文地址:https://www.cnblogs.com/xiaoMzjm/p/3886580.html
Copyright © 2011-2022 走看看