原文转载:http://bosschen.iteye.com/blog/1409179
关键字: simpledateformat24小时 格式串
G | 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 |
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就成。(哎,坑死人不偿命啊!)
相关推荐
深入理解Java:SimpleDateFormat安全的时间格式化
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); date.setTime(time); System.out.println(sdf.format(date)); 发现时间于想要的时间不符,请运行Time.reg文件
java 使用SimpleDateFormat类获取系统的当前时间 java 使用SimpleDateFormat类获取系统的当前时间
主要为大家详细介绍了Java SimpleDateFormat中英文时间格式化转换,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
目录SimpleDateFormat诡异bug复现SimpleDateFormat诡异bug字符串日期转Date日期(parse)Date日期转String类型(format)SimpleDateFormat出现bug的原因如何解决SimpleDateFormat多线程安全问题局部变量使用...
有关SimpleDateFormat的常用方法说明
JavaScript实现的java.text.SimpleDateFormat。希望多多交流。
日期操作。。。基础的SimpleDateFormat格式化日期!!操作!》初级学习代码
由浅入深解析 SimpleDateFormat 由浅入深解析 SimpleDateFormat
这对于日常开发中记录日志、显示日期和时间等场景非常有用。 知识点: * 使用 Date 类获取当前时间 * 使用 SimpleDateFormat 类将 Date 对象转换为字符串格式 * 使用 format() 方法将 Date 对象转换为字符串 * ...
SimpleDateFormat使用详解。非常实用!!!!
这个方法获取的结果是24小时制的,月份也正确。 这个方法不随手机时间的变动而变动。也就是说,即使手机设置成别的时区,不是东八区,这个方法返回的也照样是北京时间!!!这正是我在做项目的时候用到的
1.创建SimpleDateFormat对象,确定日期被格式化的格式 2.使用循环,在循环中调用Thread的sleep方法,让线程休眠1s后打印当前时间的字符串
高并发之-SimpleDateFormat类的线程安全问题和解决方案.docx
十、时间的处理 在 Java 中,时间的处理可以使用 SimpleDateFormat 对象。例如: SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS"); sdf.format(new Date()); 通过 SimpleDateFormat ...
主要介绍了JAVA使用SimpleDateFormat类表示时间代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
NULL 博文链接:https://qinchaoyong.iteye.com/blog/543109
Java 中的日期和时间处理是编程中非常重要的一方面,Date、String 和 Timestamp 是三种常用的日期和时间类型,本文将详细介绍它们之间的转换问题。 一、获取系统当前时间 在 Java 中,可以使用以下三种方法来获取...
1、创建:SimpleDateFormat d = new SimpleDateFormat("格式") 3、转化成String类型显示,String day