Java SimpleDateFormat问题与kk小时格式化

斯坦利

我了解kk应该导致小时数介于1到24之间。但是,这种格式的日子如何变化似乎存在问题。

这是示例代码,其输出说明了我的观点:

Long HOUR = 3600000L;

SimpleDateFormat kkFormat = new SimpleDateFormat("yyyy-MM-dd kk");
SimpleDateFormat HHFormat = new SimpleDateFormat("yyyy-MM-dd HH");

Date date = kkFormat.parse("2015-05-20 21");

for(int i=0; i<5; i++){
    System.out.println(kkFormat.format(new Date(date.getTime() + i * HOUR)));
    System.out.println(HHFormat.format(new Date(date.getTime() + i * HOUR)));
    System.out.println();
}

这将产生以下输出:

2015-05-20 21
2015-05-20 21

2015-05-20 22
2015-05-20 22

2015-05-20 23
2015-05-20 23

2015-05-21 24
2015-05-21 00

2015-05-21 01
2015-05-21 01

我看到的问题是“ 2015-05-21 24”,如果此日期不能设置为“ 2015-05-20 24”。

感谢您的澄清。

编辑:为了回答Dan Getz,我正在尝试创建如下迭代的文件名:

2015052023.txt

2015052024.txt

2015052101.txt

和盖茨

星期几取决于时区,与小时的编写方式无关。因此,如果日期是21日,则日期是故事的21日。将“ 12am”写为“ 00”或“ 24”与此无关。

也许您忘记了一个小时有60分钟的不同时间?午夜不只是时钟敲响的第一刻,而是我们谈论的是整整一个小时,这显然是下一个24小时工作日的一部分。

由于这种歧义,我个人永远不会在凌晨12点以后使用24。也许您可以编辑您的问题,为什么要使用24小时作为时间?您的数据模型真的是时间戳记毫秒或类似吗?还是您希望存储和打印其他内容?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java:SimpleDateFormat无法在所需的TimeZone中格式化

来自分类Dev

在Java中使用SimpleDateFormat进行时间格式化

来自分类Dev

Java:SimpleDateFormat无法在所需的TimeZone中格式化

来自分类Dev

使用SimpleDateFormat在Java中格式化JavaScript jQuery Date格式

来自分类Dev

使用SimpleDateFormat用Java格式化JavaScript jQuery Date格式

来自分类Dev

Java SimpleDateFormat格式问题与yyyy

来自分类Dev

格式化Java

来自分类Dev

格式化日期Java

来自分类Dev

格式化日期Java

来自分类Dev

如何正确格式化Java时间

来自分类Dev

在Android中从Java格式化布局

来自分类Dev

Java:格式化数字错误?

来自分类Dev

用Java格式化日期

来自分类Dev

用Java格式化日期

来自分类Dev

用Java格式化JSON数据

来自分类Dev

如何正确格式化Java时间

来自分类Dev

读取Java Servlet的格式化文本

来自分类Dev

用Java格式化XML文件

来自分类Dev

用Java格式化JSON数据

来自分类Dev

Java中的数据格式化

来自分类Dev

Java - 如何格式化文件 URL

来自分类Dev

在 Java 中格式化 XMLGregorianCalendar

来自分类Dev

格式化问题

来自分类Dev

如何使用SimpleDateFormat格式化日期

来自分类Dev

如何格式化您的SimpleDateFormat输出

来自分类常见问题

用Java格式化SQL查询的输出

来自分类Dev

重新格式化JSON密钥的Java工具

来自分类Dev

如何在Java中格式化日期范围?

来自分类Dev

使用特殊字符在Java中打印格式化的输出