代码之家  ›  专栏  ›  技术社区  ›  Antoine Molinaro

转换为历元时间的小时数错误

  •  1
  • Antoine Molinaro  · 技术社区  · 7 年前

    我正在尝试用历元时间方法转换日期。
    使用以下代码

    long epoch = 0;
    try {
        epoch = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("12/11/2017 23:20:23")
                .getTime();
    } catch (ParseException e) {
        e.printStackTrace();
    }
    

    它给了我一个划时代的时间: 1513052423

    一旦转换,给出: Tuesday 12 December 2017 04:20:23 而不是 23:20:23 :/

    1 回复  |  直到 7 年前
        1
  •  4
  •   GuessWho    7 年前

    根据 documentation SimpleDataFormat对区域设置敏感。请检查或设置您的时区

    sdf.setTimeZone(TimeZone.getTimeZone("GMT"));