有 Java 编程相关的问题?

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

java将字符串格式的日期解析为GregoriaCalendar的最简单方法

我有以下日期:

2011-10-07T08:51:52.006Z

现在我想把它解析成一个gregorianalendar。有没有比使用子字符串并将其解析为整数更简单的方法

时间串中的Z是多少

我尝试使用SimpleDataFormat解析它,但在日期字符串中找不到对t的解释


共 (3) 个答案

  1. # 1 楼答案

    您可以使用SimpleDateFormatter来解析字符串。请阅读上述类的javadoc,以了解格式字符串是什么Z'表示时区信息

  2. # 2 楼答案

    我想看看DateTimeFormatter

    DateTimeFormatter formatter =
        DateTimeFormat.forPattern("<custom_pattern>").withOffsetParsed();
    DateTime dateTime = formatter.parseDateTime("<your_input>");
    GregorianCalendar cal = dateTime.toGregorianCalendar();
    

    字符串中的T用作日期和时间之间的分隔符,Z是根据ISO-8601 format的时区信息

  3. # 3 楼答案

    DateFormat format = new SimpleDateFormat( "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" )
    Date       date = format.parse( "2011-10-07T08:51:52.006Z" );
    Calendar   calendar = new GregorianCalendar();
    
    calendar.setTime( date );