首页 > 解决方案 > 为 IST 工作时,Java 日期解析不适用于 ET 时区

问题描述

我正在尝试解析迄今为止的字符串。日期格式为“dd-MMM-yyyy Z”的字符串和值为“12-DEC-2018 ET”的字符串。它给出了错误 java.text.ParseException: Unparseable date: "12-DEC-2018 ET"。

相同的代码适用于值为“12-DEC-2018 IST”的字符串。下面是代码片段:

public static void main(String[] args) throws ParseException {

    String dateInputIST ="12-DEC-2018 IST";
    String dateInputET ="12-DEC-2018 ET";

    SimpleDateFormat sdfmt1 = new SimpleDateFormat("dd-MMM-yyyy Z");
    SimpleDateFormat sdfmt2= new SimpleDateFormat("dd/MM/yyyy");

    Date dDate = sdfmt1.parse( dateInputIST );
    String strOutput = sdfmt2.format( dDate );

    System.out.println(strOutput);

    Date etDate = sdfmt1.parse(dateInputET);
    strOutput = sdfmt2.format(etDate);

    System.out.println(strOutput);

}

有人可以帮忙吗。我需要解析任何时区的时间。谢谢,纳文

标签: javadatetimezonedate-parsing

解决方案


改变

 String dateInputET ="12-DEC-2018 ET";

 String dateInputET ="12-DEC-2018 EDT";

'ET' 不是公认的时区。


推荐阅读