gpt4 book ai didi

java - 将日期字符串解析为 "yyyy-MM-dd' T'HH :mm:ss' -'hh:mm" 时,小时、分钟和米尔值错误

转载 作者:行者123 更新时间:2023-12-02 04:46:37 27 4
gpt4 key购买 nike

我已经尝试不同的格式有一段时间了。但是我在将日期字符串解析为日期时遇到了问题。

这是我试图解析的示例日期字符串。 “2015-04-13T10:17:00-04:00”

这是我的代码:

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'-'hh:mm", Locale.ENGLISH);
try {
startCal.setTime(format.parse(data.StartTime));
endCal.setTime(format.parse(data.EndTime));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

将其打印在日志上时得到的值是

Log.i("Event exact date", String.valueOf(startCal.getTime().toString()));

04-13 22:38:11.526: I/Event exact date(1665): Mon Apr 13 04:00:00 GMT+08:00 2015

我预计小时值是 10,分钟值是 17。我认为它是从“-hh:mm”获取值。我从 Web api 获取这个值。大家有什么想法吗?谢谢

最佳答案

我认为你想要的格式是:

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX", Locale.ENGLISH);

凡‘XXX’,按SimpleDateFormat API docs ,表示 ISO 8601 时区。

完整示例:

public class TestDateParse {
public static void main(String[] args) throws ParseException {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX", Locale.ENGLISH);

Date date = format.parse("2015-04-13T10:17:00-04:00");
System.out.println("date: " + date);
}
}

测试输出:

date: Mon Apr 13 16:17:00 CEST 2015

关于java - 将日期字符串解析为 "yyyy-MM-dd' T'HH :mm:ss' -'hh:mm" 时,小时、分钟和米尔值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29608136/

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