小编典典

Java Web应用程序中的日期转换

java

    String date1 = "13/03/2014 16:56:46 AEDT";

    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss z");
    sdf.setTimeZone(TimeZone.getTimeZone("GMT+12"));
    java.util.Date convertedDate = (java.util.Date) sdf.parse(date1);
    SimpleDateFormat outFormatter = new SimpleDateFormat("EE MMM dd yyyy HH:mm:ss z");
    outFormatter.setTimeZone(TimeZone.getTimeZone("GMT+12"));
    String output = outFormatter.format(convertedDate);
    System.out.println("Date in NZ Timezone : " + output);

我正在尝试将AEDT日期转换为dd / MM / yyyy HH:mm:ss z,但它给了我异常:

线程“主”中的异常java.text.ParseException:无法解析的日期:java.text.DateFormat.parse(DateFormat.java:337)的“
2014年3月3日16:56:46 AEDT”

请在这件事上给予我帮助....

我需要将用户时间转换为我的UTC时间,以便通过网络应用程序将其更改为相同时间…


阅读 299

收藏
2020-11-26

共1个答案

小编典典

这意味着Java不支持AEDT缩写,但是由于您知道时区偏移,因此可以这样做

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("GMT+12"));
java.util.Date convertedDate = (java.util.Date) sdf.parse(date1);
2020-11-26