zoukankan      html  css  js  c++  java
  • 日期和时间模式字符串

    日期和时间格式由日期和时间模式字符串指定。

    在日期和时间模式字符串中,未加引号的字母 'A''Z''a''z' 被解释为模式字母,用来表示日期或时间字符串元素。文本可以使用单引号 (') 引起来,以免进行解释。"''" 表示单引号。

    所有其他字符均不解释;只是在格式化时将它们简单复制到输出字符串,或者在解析时与输入字符串进行匹配。 

    定义了以下模式字母(所有其他字符 'A''Z''a''z' 都被保留): 

    字母日期或时间元素表示示例
    G Era 标志符 Text AD
    y Year 1996; 96
    M 年中的月份 Month July; Jul; 07
    w 年中的周数 Number 27
    W 月份中的周数 Number 2
    D 年中的天数 Number 189
    d 月份中的天数 Number 10
    F 月份中的星期 Number 2
    E 星期中的天数 Text Tuesday; Tue
    a Am/pm 标记 Text PM
    H 一天中的小时数(0-23) Number 0
    k 一天中的小时数(1-24) Number 24
    K am/pm 中的小时数(0-11) Number 0
    h am/pm 中的小时数(1-12) Number 12
    m 小时中的分钟数 Number 30
    s 分钟中的秒数 Number 55
    S 毫秒数 Number 978
    z 时区 General time zone Pacific Standard Time; PST; GMT-08:00
    Z 时区 RFC 822 time zone -0800

    模式字母通常是重复的,其数量确定其精确表示。


    Number: 对于格式化来说,模式字母的数量是最小的数位,如果数位不够,则用 0 填充以达到此数量。

    月份中的天数d测试1:

    Calendar cal = Calendar.getInstance();
            cal.set(1987, 0, 2, 3, 4, 5);// 设置时间为1987年1月2日3时4分5秒
            Date d = cal.getTime();
            SimpleDateFormat sdf = new SimpleDateFormat();
            StringBuilder s = new StringBuilder();
            for (int i = 0; i < 2; i++) {
                s.append("d");
                sdf.applyPattern(s.toString());
                System.out.println("" + s + "	:" + sdf.format(d));
            }

    打印:

    月份中的天数d测试2:

            Calendar cal = Calendar.getInstance();
            cal.set(1987, 0, 28, 3, 4, 5);// 设置时间为1987年1月28日3时4分5秒
            Date d = cal.getTime();
            SimpleDateFormat sdf = new SimpleDateFormat();
            StringBuilder s = new StringBuilder();
            for (int i = 0; i < 3; i++) {
                s.append("d");
                sdf.applyPattern(s.toString());
                System.out.println("" + s + "	:" + sdf.format(d));
            }

    打印:


    Year: 对于格式化来说,模式字母的数量小于4,则年份截取为 2 位数;否则将年份解释为 number。 

    年份y测试:

            Calendar cal=Calendar.getInstance();
            cal.set(1987, 1, 2, 3, 4, 5);//设置时间为1987年1月2日3时4分5秒
            Date d=cal.getTime();
            SimpleDateFormat sdf = new SimpleDateFormat();
            StringBuilder s = new StringBuilder();
            for (int i = 0; i < 5; i++) {
                s.append("y");
                sdf.applyPattern(s.toString());
                System.out.println(""+s+"	:"+sdf.format(d));
            }

    打印:


    Month: 如果模式字母的数量为 3 或大于 3,则将月份解释为 text;否则解释为 number。

    月份M测试:

            Calendar cal = Calendar.getInstance();
            cal.set(1987, 1, 2, 3, 4, 5);// 设置时间为1987年1月2日3时4分5秒
            Date d = cal.getTime();
            SimpleDateFormat sdf = new SimpleDateFormat();
            StringBuilder s = new StringBuilder();
            for (int i = 0; i < 4; i++) {
                s.append("M");
                sdf.applyPattern(s.toString());
                System.out.println("" + s + "	:" + sdf.format(d));
            }
            cal.set(1987, 11, 2, 3, 4, 5);// 设置时间为1987年12月2日3时4分5秒
            System.out.println("******修改月份为12月********");
            d = cal.getTime();
            s.setLength(0);
            for (int i = 0; i < 4; i++) {
                s.append("M");
                sdf.applyPattern(s.toString());
                System.out.println("" + s + "	:" + sdf.format(d));
            }

    打印:


    Text: 对于格式化来说,如果模式字母的数量大于等于 4,则使用完全形式;否则,在可用的情况下使用短形式或缩写形式。


    参考文档:JDK API 1.6

  • 相关阅读:
    SlipHover,能感知鼠标方向的图片遮罩效果jQuery插件
    jQuery插件开发精品教程,让你的jQuery提升一个台阶
    HTML5打造的炫酷本地音乐播放器-喵喵Player
    无论何时,记得做好代码的清理工作
    statcounter统计的浏览器市场占有率
    开大你的音响,感受HTML5 Audio API带来的视听盛宴
    requestAnimationFrame,Web中写动画的另一种选择
    好的用户界面-界面设计的一些技巧
    Windows上帝模式,上帝应该就是这样使用Windows的
    JavaScript字符转Unicode,顺便说句:GitHub的Oh no页面很亮
  • 原文地址:https://www.cnblogs.com/SQP51312/p/6237289.html
Copyright © 2011-2022 走看看