java日期格式化之特殊字符

在java中对日期进行格式化是比较简单的,通常的代码如下:

	String pattern = "yyyy年MM月DD日";
        SimpleDateFormat sdf = new SimpleDateFormat(pattern );
        System.out.println(sdf.format(new Date()));

这样就能够简单地将日期进行格式化,其上结果是:2015年01月29日

但最近工作中却遇到这样一个需求,要求格式化后显示的样式为:年W周,即还以上面的日期为例,需要显示的格式为:15W05。

如是用正常的方法是没有办法格式化出来的,因为W在格式化规则中表示的是周的。当时使用的是两个格式化之后拼接起来的。

	String pattern1 = "yy";
        SimpleDateFormat sdf1 = new SimpleDateFormat(pattern1 );
        String pattern2 = "ww";
        SimpleDateFormat sdf2 = new SimpleDateFormat(pattern2 );
        System.out.println(sdf1.format(new Date())+"W"+sdf2.format(new Date()));
今天突然发现其实有简单的方式就能够实现的,只需将W使用单引号引起来就可以了。如下代码

String pattern3 = "yy'W'ww";
        SimpleDateFormat sdf3 = new SimpleDateFormat(pattern3);
        System.out.println(sdf3.format(new Date()));


你可能感兴趣的:(基础知识)