yyyy example java datetime formatting simpledateformat

java - example - Uso de caracteres alfabéticos en SimpleDateFormat Pattern String



string to date java (1)

¿Es posible incluir un carácter alfabético en una cadena de patrón SimpleDateFormat?

Estoy tratando de crear una cadena de formato donde la letra ''T'' se incluye antes de la hora, por ejemplo:

2003-11-15 T 09: 30: 47-05: 00.

Actualmente estoy usando yyyy-MM-ddhh:mm:ssZ como la cadena del patrón.

Si lo cambio a yyyy-MM-ddThh:mm:ssZ lanzará una excepción ya que ''A'' a ''Z'' y ''a'' a ''z'' están reservados.

¿Hay alguna solución que no implique el uso de dos DateFormats?


Rodear la T con comillas simples debería funcionar:

yyyy-MM-dd''T''hh:mm:ssZ

Citando de la documentación (el énfasis es mío):

Los formatos de fecha y hora están especificados por cadenas de patrones de fecha y hora. Dentro de las cadenas de patrones de fecha y hora, las letras no citadas de ''A'' a ''Z'' y de ''a'' a ''z'' se interpretan como letras de patrones que representan los componentes de una cadena de fecha u hora. El texto se puede cotizar usando comillas simples ( '' ) para evitar la interpretación. "''''" representa una sola cita. Todos los demás personajes no son interpretados; simplemente se copian en la cadena de salida durante el formateo o se comparan con la cadena de entrada durante el análisis.

Su caso de uso específico incluso se incluye como un ejemplo:

Date and Time Pattern Result ------------------------------------------------------------- "yyyy-MM-dd''T''HH:mm:ss.SSSZ" 2001-07-04T12:08:56.235-0700