Decoding the Timestamp String: 2011-08-12T20:17:46.384Z
In an attempt to parse the date string "2011-08-12T20:17:46.384Z" using Java's DateFormat.getDateInstance(), you encountered the error: "Unparseable date: '2011-08-12T20:17:46.384Z'". This indicates that the provided date format is not recognized by the method.
To successfully parse this date, you need to identify the proper format string. The "T" in the string separates the date from the time, and the "Z" denotes "Zulu time," which represents UTC (Coordinated Universal Time).
Parsing the Date Using SimpleDateFormat
To parse the date using SimpleDateFormat, you can employ the following code:
SimpleDateFormat format = new SimpleDateFormat( "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", Locale.US); format.setTimeZone(TimeZone.getTimeZone("UTC"));
This format string explicitly specifies the date and time components, including the separator "T" and the Zulu time indicator "Z". Using this format, you can parse the date string as follows:
Date date = format.parse("2011-08-12T20:17:46.384Z");
Parsing the Date Using Joda Time
Alternatively, you can use Joda Time's ISODateTimeFormat.dateTime() to parse the date:
DateTime dateTime = ISODateTimeFormat.dateTime().parseDateTime("2011-08-12T20:17:46.384Z");
The above is the detailed content of How to Parse the Date String '2011-08-12T20:17:46.384Z' in Java?. For more information, please follow other related articles on the PHP Chinese website!