La hora que recibo está en el formato "2011-07-31T08: 16: 37.733Z". En realidad, Z debe ser la zona horaria y luego ese tiempo se convierte a la zona horaria local. ¿Cómo puedo convertir esta vez a la zona horaria predeterminada ahora?Cómo convertir el tiempo en formato YYYY-MM-DDTHH: mm: ss.SSSZ en la zona horaria predeterminada?
Respuesta
RFC 3339 describe un "perfil" ISO 8601 específico para la representación de fecha/hora.
Si utiliza una biblioteca de código abierto de terceros, eche un vistazo a la clase de utilidad ISODateTimeFormat
de Joda-Time.
De lo contrario, si necesita desplegar su propio código, no es suficiente utilizar un SimpleDateFormat
debido a la forma en que ISO 8601/RFC 3339 representa la información de la zona horaria.
Si todo lo que necesita para analizar está en 'Z' (Zulu o UTC), entonces es relativamente simple:
String input = "2011-08-11T01:23:45.678Z";
TimeZone utc = TimeZone.getTimeZone("UTC");
SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
f.setTimeZone(utc);
GregorianCalendar cal = new GregorianCalendar(utc);
cal.setTime(f.parse(input));
System.out.println(cal.getTime());
debe imprimir "2011-08-11T01: 23: 45.678Z" en su zona horaria local.
Si necesita manejar zonas horarias arbitrarias en RFC 3339, deberá extender lo anterior para analizar el designador de zona horaria y recuperar la instancia Java TimeZone
correspondiente. Eso no debería ser demasiado difícil si solo son horas completas +/- GMT, pero en el caso de los desplazamientos no estándar, es posible que deba crear su propia instancia de SimpleTimeZone
.
private static SimpleDateFormat DATE_TIME_FORMAT=new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
DATE_TIME_FORMAT.setTimeZone(TimeZone.getID()); //for example
date=DATE_TIME_FORMAT.format(curDate);
- 1. Cómo hacer coincidir el formato de zona horaria YYYY-MM-DDThh: mm: ssTZD en ruby
- 2. postgres zona horaria predeterminada
- 3. Cómo convertir DateTime en zona horaria específica?
- 4. Cómo convertir el tiempo de fecha de una zona horaria a otra zona horaria
- 5. ¿Cómo cambiar la zona horaria predeterminada en R?
- 6. ¿Convertir tiempo en formato HH: MM: SS a segundos solamente?
- 7. Cuál es la zona horaria predeterminada en java.util.Date
- 8. Ajuste de la configuración de zona horaria predeterminada en RDS
- 9. Cambiar la zona horaria sin cambiar el tiempo en Java
- 10. NSDate no devuelve mi zona horaria local/zona horaria predeterminada del dispositivo
- 11. Cómo obtener la zona horaria de las propiedades en CultureInfo
- 12. ajustar la zona horaria
- 13. SimpleDateFormat lleva demasiado tiempo cuando la zona horaria se incluye
- 14. Python pytz Convertir una marca de tiempo (formato de cadena) de una zona horaria a otra
- 15. ¿Cómo obtener una cadena isoformat datetime que incluya la zona horaria predeterminada?
- 16. Cómo ignorar la zona horaria del usuario y forzar la fecha() utiliza la zona horaria específica
- 17. Convertir fechas JSON sin zona horaria
- 18. ¿Cómo cambiar la zona horaria predeterminada en el servicio web azul?
- 19. Java: zona horaria por la que la zona horaria diferente da el mismo valor en milisec
- 20. ¿Cómo convertir el tiempo a la zona horaria del dispositivo iPhone?
- 21. ruby get Tiempo en la zona horaria dada
- 22. Tiempo de conversión WCF basado en la zona horaria automáticamente
- 23. conversión de cadena hasta la fecha con zona horaria
- 24. Problema de zona horaria en Android
- 25. ¿Cómo especificar la zona horaria (UTC) al convertir a tiempo Unix? (Python)
- 26. Convertir UTC DateTime a otra zona horaria
- 27. git: zona horaria y la fecha y hora formato
- 28. Rieles: obtenga #beginning_of_day en la zona horaria
- 29. ¿Cómo cambio la zona horaria en CakePHP?
- 30. formato como hora GMT/UTC cuando la zona horaria predeterminada es otra cosa
He mencionado el formato de la fecha. Esa fecha está en formato RFC3339. Si tiene alguna idea de cómo analizar las fechas de RFC3339, háganoslo saber. – sunil
Editado arriba, ¿fue útil? Esto podría ayudar: http://cokere.com/RFC3339Date.txt – atzu