可以用SimpleDateFormat或者String.format()对标准日期进行格式化,来获取符合需求的日期格式。
可根据下面的表定制自己的样式。如果仅需得到日期(年月日)或时间(时分秒)的话,使用String.format()更方便一些。
yyyy:年
MM:月
dd:日
hh:1~12小时制(1-12)
HH:24小时制(0-23)
mm:分
ss:秒
S:毫秒
E:星期几
D:一年中的第几天
F:一月中的第几个星期(会把这个月总共过的天数除以7)
w:一年中的第几个星期
W:一月中的第几星期(会根据实际情况来算)
a:上下午标识
k:和HH差不多,表示一天24小时制(1-24)。
K:和hh差不多,表示一天12小时制(0-11)。
z:表示时区
下面简单对这两种方法进行验证:
public class MyDate {
public static void main(String[] args) {
Date d = new Date();
//根据需求选择格式化样式
String pattern = "yyyy年MM月dd日 HH:mm:ss E";
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
String time = sdf.format(d);
System.out.println(time);
//使用String.format()方法
String time1 = String.format("%tF", d)+" "+
String.format("%tT", d)+" "+String.format("%tA", d);
System.out.println(time1);
}
}
输出为:
2018年01月09日 20:22:45 星期二
2018-01-09 20:22:45 星期二