【问题标题】:SimpleDateFormat in android not incrementing date when changing timezoneandroid中的SimpleDateFormat在更改时区时不会增加日期
【发布时间】:2013-10-02 16:21:33
【问题描述】:

所以我有这个代码

Date now = new Date(System.currentTimeMillis());
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy kk:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
String date = sdf.format(now);

相当标准的东西。但是,当我在 2013 年 10 月 1 日 18:45:50 从山区时间转换时,我遇到了一个奇怪的问题,我得到了 10/02/2013 24:45:50 的输出。

对我来说似乎是一个错误。我做错了吗?

【问题讨论】:

    标签: java android time simpledateformat


    【解决方案1】:

    kk 会给你一个从0124 的值。如果您期望从0023 的值,您可能需要HH

    【讨论】:

      【解决方案2】:

      kk 用于 SimpleDateFormat 格式的小时数介于 01 和 24 之间(均包括在内)。您应该使用它来将小时格式化为 00 到 23 之间。

      SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-06
        • 2023-03-06
        • 1970-01-01
        • 2012-03-20
        • 2020-10-09
        相关资源
        最近更新 更多