转:SimpleDateFormat24小时制时间显示

67 篇文章 0 订阅

原文转载:http://bosschen.iteye.com/blog/1409179

 

关键字: simpledateformat24小时 格式串

GEra 标志符TextAD
yYear 1996; 96
M年中的月份Month July; Jul; 07
w年中的周数Number27
W月份中的周数Number2
D年中的天数Number189
d月份中的天数Number10
F月份中的星期Number2
E星期中的天数Text Tuesday; Tue
aAm/pm 标记TextPM
H一天中的小时数(0-23)Number0
k一天中的小时数(1-24Number24
Kam/pm 中的小时数(0-11)Number0
ham/pm 中的小时数(1-12)Number12
m小时中的分钟数Number30
s分钟中的秒数Number55
S毫秒数Number978
z时区General time zone Pacific Standard Time; PST; GMT-08:00
Z时区RFC 822 time zone-0800

java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyyMMddkkmmss");
java.util.Date date = new java.util.Date();
String time = sf.format(date);

--得到的是24小时显示。

如果把kk换成hh,则是12小时显示。

 

个人说明:

转载的原因,是因为被坑了。选的数据是24小时制的,存到数据库里也是24小时制的,但是拿出来显示到页面竟然自动变成了12小时制的,很奇怪。以为是电脑设置的原因,可是电脑时间可以显示24小时制的啊。后来一路dubug,终于发现是使用了SimpleDateFormat,原代码如下:

/***
 * 将Timestamp类型的数据转换成字符串
* @param date
 * @return 字符串类型且格式化后的日期
 */
public static String getFormatYYYYMMDDHHMMSSS(Timestamp date){
	SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
	return df.format(date);
}

 格式化中设置的是hh,小写的,它就表示“am/pm 中的小时数(1-12)”,所以原有的24小时制的经它格式化之后就成12小时制的了。将hh改成HH或kk就成。(哎,坑死人不偿命啊!)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值