gpt4 book ai didi

java - 使用冒号分隔符格式化 ISO 8601 日期

转载 作者:搜寻专家 更新时间:2023-11-01 01:51:25 27 4
gpt4 key购买 nike

我正在尝试将以毫秒为单位的日期转换为以下 ISO 8601 格式:

enter image description here

但我使用 SimpleDateFormat 得到以下信息:

    /**
* It converts the time from long to the ISO format
*
* @param timestampMillis
* @return isoDate
*/
public String convertTimeMillisToISO8601(String timestampMillis)
{
long timeInLong= Long.parseLong(timestampMillis);
DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
df.setTimeZone(TimeZone.getTimeZone("UTC"));
String isoDate = df.format(new java.util.Date(timeInLong));
return isoDate;
}

输出:

"ts":"2015-06-18T09:56:21+0000"

我知道我可以使用 substring 来附加额外的冒号,但有更好的方法吗?

最佳答案

对于 Java 7 及更高版本,您可以在日期格式字符串中使用 XXX(ISO 8601 时区)。根据the documentation , X 的结果可以是:

X    => -08
XX => -0800
XXX => -08:00

但对于所有这些,它还不如返回 Z!

对于 Java 6 及更早版本,没有 X ( J6 doc ),并且由于 X 的结果可能会也可能不会如您所愿,我强烈建议建议您自己插入那个冒号。

关于java - 使用冒号分隔符格式化 ISO 8601 日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29645020/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com