gpt4 book ai didi

java - 使用带有时区的 SimpleDateTimeFormatter 时获取错误的解析日期

转载 作者:行者123 更新时间:2023-12-02 04:16:52 26 4
gpt4 key购买 nike

我有以下代码:

  SimpleDateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
String s2 = "Mon Oct 19 19:52:21 IST 2015";
System.out.println(format.parse(s2));

我预计代码会打印“Mon Oct 19 07:22:21 PDT 2015”,但令我惊讶的是它打印“Mon Oct 19 10:52:21 PDT 2015”。我可以看到“IST”是“z”的有效时区。但是,以下代码运行良好:

SimpleDateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
String s2 = "Mon Oct 19 19:52:21 GMT+05:30 2015";
System.out.println(format.parse(s2));

请帮忙。

最佳答案

使用 IST 是危险的,因为它可能代表印度或以色列 ST。假设您指的是 Indian ST,请尝试以下操作:

    SimpleDateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
format.setTimeZone(TimeZone.getTimeZone("Asia/Calcutta"));
String s2 = "Mon Oct 19 19:52:21 IST 2015";
System.out.println(format.parse(s2));

此外,请遵循@Meno 的回答的建议

关于java - 使用带有时区的 SimpleDateTimeFormatter 时获取错误的解析日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33217128/

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