Formato a Fechas en Java con DateFormat
En el día de hoy les explicaré cómo formatear una fecha en Java. Lo primero que haremos será usar una de las clases del paquete java.text. Esta clase es DateFormat. De igual manera utilizaremos la clase Date y Locale del paquete java.util.
Un detalle de la clase DateFormat de Java es que es abstracta, por lo cual usaremos métodos estáticos para que nos devuelvan una instancia de la clase.
💡 En caso de usar el código, recuerda realizar los import de las clases necesarias.
Crear una instancia de Date
Sección titulada «Crear una instancia de Date»Lo primero crearemos una instancia de la clase Date:
Date fecha = new Date();Configurar el Locale
Sección titulada «Configurar el Locale»Crearemos una instancia de la clase Locale. Como ven, ingresé parámetros al constructor los cuales especifican el lenguaje y país respectivamente. Ingresé al constructor parámetros para que muestre la fecha en Brasil (pt, BR):
Locale brasil = new Locale("pt", "BR");Crear el array de DateFormat
Sección titulada «Crear el array de DateFormat»Ahora creamos un array de DateFormat:
DateFormat[] df = new DateFormat[6];A cada una de las posiciones le damos una instancia de DateFormat. El método getDateInstance regresa una instancia:
df[0] = DateFormat.getInstance();df[1] = DateFormat.getTimeInstance();df[2] = DateFormat.getDateInstance();df[3] = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);df[4] = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);df[5] = DateFormat.getDateInstance(DateFormat.LONG, brasil);A cada una de las instancias le pasamos constantes. De cualquier forma, hay más constantes las cuales podrías revisar en el API y hacer pruebas.
A la última de las instancias le pasamos el locale para que me dé formato en el país.
⚠️ Recordar que como DateFormat es abstracta no podemos hacer esto:
new DateFormat().
Formatear la fecha
Sección titulada «Formatear la fecha»Por último hacemos un loop para iterar sobre el array y damos el formato a la fecha que habíamos creado arriba:
for (int i = 0; i < df.length; i++) { System.out.println(df[i].format(fecha));}Descarga el código de Formato a Fechas en Java con DateFormat
Se explica cómo dar formato a fechas en Java utilizando la clase DateFormat y Locale.