yyyy parse convertir change java date parsing timezone

parse - string to date java 8



¿Cómo puedo reconocer la zona horaria de Zulu en Java DateUtils.parseDate? (2)

Parece un error en FastDateFormat commons-lang. Cuéntales sobre eso, y finalmente deberías obtener una solución. Hasta entonces podrías intentar preprocesar las fechas y reemplazar ''Z'' por ''+00''

Tengo fechas en el formato 2008-12-23T00:00:00Z . Esto se parece mucho al formato ISO 8601 con una zona horaria Zulu (UTC). Pensé que el siguiente código lo analizaría (usando commons-lang ):

String pattern = DateFormatUtils.ISO_DATETIME_TIME_ZONE_FORMAT.getPattern(); Date d = DateUtils.parseDate(dateToParse, new String[] { pattern });

Si tomo el mismo patrón ( yyyy-MM-dd''T''HH:mm:ssZZ ) pero yyyy-MM-dd''T''HH:mm:ssZZ la zona horaria, funciona.

¿Sabes cómo puedo reconocer la zona horaria de Zulu? Solo tengo acceso a Java 1.4 y Jakarta commons-lang. Aún no tengo tiempo de Joda ...


Creo que Commons-lang está usando el DateFormat incorporado de Java o SimpleDateFormat, que arroja una ParseException para su fecha. Si todas sus cadenas de entrada finalizan con la Z final, puede usar esto:

java.text.DateFormat df = new java.text.SimpleDateFormat("yyyy-MM-dd''T''HH:mm:ss''Z''"); // explicitly set timezone of input if needed df.setTimeZone(java.util.TimeZone.getTimeZone("Zulu")); java.util.Date date = df.parse("2008-12-23T00:00:00Z");