首页 > 解决方案 > Java中的本地时间到UTC

问题描述

我正在尝试将本地时间转换为 java 中的 UTC 时间。我已经写了代码:

    String datesToConvert = "31-12-2018 23:37:00";
    String dateFormat = "dd-MM-yyyy HH:mm:ss";

    SimpleDateFormat sdf2 = new SimpleDateFormat(dateFormat);
    sdf2.setTimeZone(TimeZone.getDefault());
    Date gmt = null;

    SimpleDateFormat sdfOutPutToSend = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
    sdfOutPutToSend.setTimeZone(TimeZone.getTimeZone("UTC"));

    try {
        gmt = sdf2.parse(datesToConvert);
        System.out.println("UTC FORMATTED DATE : " + sdfOutPutToSend.format(gmt));

    } catch (Exception e) {
        e.printStackTrace();
    }

我得到的输出是:UTC FORMATTED DATE:2018-12-31T18:07:00.000Z

但我希望它是相同的日期和时间,但最后在 .000Z 中发生变化,这显示了时差。

标签: javaandroiddatedatetime

解决方案



推荐阅读