SimpleDateFormat日期格式化总结
Posted lyiwo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SimpleDateFormat日期格式化总结相关的知识,希望对你有一定的参考价值。
java.text.SimpleDateFormat包中,日期和时间格式由日期和时间模式字符串指定。
格式:例如 "20180516" 表示为:"yyyyMMdd"
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小
使用示例:
public class FormatDateTime {
public static void main(String[] args) {
SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
SimpleDateFormat myFmt1=new SimpleDateFormat("yy/MM/dd HH:mm");
SimpleDateFormat myFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//等价于now.toLocaleString()
SimpleDateFormat myFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");
SimpleDateFormat myFmt4=new SimpleDateFormat(
"一年中的第 D 天 一年中第w个星期 一月中第W个星期 在一天中k时 z时区");
Date now=new Date();
System.out.println(myFmt.format(now));
System.out.println(myFmt1.format(now));
System.out.println(myFmt2.format(now));
System.out.println(myFmt3.format(now));
System.out.println(myFmt4.format(now));
System.out.println(now.toGMTString());
System.out.println(now.toLocaleString());
System.out.println(now.toString());
}
}
结果:
2018年12月27日 11时24分57秒
18/12/27 11:24
2018-12-27 11:24:57
2018年12月27日 11时24分57秒 星期四
一年中的第 361 天 一年中第52个星期 一月中第5个星期 在一天中11时 CST时区
27 Dec 2018 03:24:57 GMT
2018-12-27 11:24:57
Thu Dec 27 11:24:57 CST 2018
private static long parseTime(String strTime) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
long time = 0L;
try {
time = format.parse(strTime).getTime();
} catch (ParseException e) {
e.printStackTrace();
}
return time;
}
public static void main(String[] args) {
String aString="2018-12-27";
long aTime=parseTime(aString);
System.out.println(aTime);
SimpleDateFormat aDate=new SimpleDateFormat("yyyy-MM-dd");
System.out.println(aDate.format(aTime));
}
结果:
1545840000000
2018-12-27
很方便的实现了string转时间
以上是关于SimpleDateFormat日期格式化总结的主要内容,如果未能解决你的问题,请参考以下文章
Java日期格式化(DateFormat类和SimpleDateFormat类)