首页 > 技术文章 > 关键字: simpledateformat24小时 格式串

clarke157 2017-03-20 10:43 原文

SimpleDateFormat 是 Java 中一个非常常用的类,该类用来对日期字符串进行解析和格式化输出

  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
1 java.text.SimpleDateFormat sf = new  java.text.SimpleDateFormat("yyyyMMddkkmmss");   
2 java.util.Date date  = new java.util.Date();   
3 String time = sf.format(date);

得到的是24小时。

如果把kk换成hh,则是12小时显示,需要注意k和h的是范围分别是(1-24)和(1-12)。

提示:如果使用不小心会导致非常微妙和难以调试的问题,因为 DateFormat 和 SimpleDateFormat 类不都是线程安全的,在多线程环境下调用 format() 和 parse() 方法应该使用同步代码来避免问题。

推荐阅读