有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (2) 个答案

  1. # 1 楼答案

    在这个字符串中,T只是标准ISO 8601日期时间字符串中的时间组件,表示为<date>T<time>。维基百科对这种标准格式有一个detailed page

    在java中,您可以这样做来使用它

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

    我在这里用了GMT作为例子。你可以根据需要设置时区。欲了解更多关于TimeZone的信息,请参阅以下文档link

  2. # 2 楼答案

    获取Java版ISO 8601的简单方法:

    static void time() {
        final DateTimeFormatter fmt = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
        OffsetDateTime.now().truncatedTo(ChronoUnit.SECONDS).format(fmt);
        Instant.now().atOffset(ZoneOffset.ofHours(1)).truncatedTo(ChronoUnit.SECONDS).format(fmt);
        Instant.now().atOffset(ZoneOffset.UTC).truncatedTo(ChronoUnit.SECONDS).format(fmt);
        OffsetDateTime.parse("2007-12-03T10:15:30+01:00").format(fmt);
        LocalDateTime.parse("2009-06-15T13:45:30").format(fmt);
    }