Veamos los siguientes ejemplos:
package test;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class Fechas {
public static void main(String[] args) {
//Capturando la hora actual
LocalDateTime hoy = LocalDateTime.now();
System.out.println("Fecha y hora actual: " + hoy.toString());
//Ingresando el año, mes, día, hora y minuto (segundo es opcional)
LocalDateTime desdeInt = LocalDateTime.of(2019, 10, 23, 12, 31);
System.out.println("Fecha y hora actual desde ints: " + desdeInt.toString());
//Ingresando hora desde un String, usando formato año, mes, día, hora, minuto y segundo
LocalDateTime desdeString = LocalDateTime.parse("1992-06-30T21:11:30");
System.out.println("Fecha y hora con formato por defecto: " + desdeString.toString());
//Ingresando hora desde un String que tiene formato: Horas y minutos
DateTimeFormatter formato = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss");
LocalDateTime conFormato = LocalDateTime.parse("30-06-1992 21:52:00", formato);
System.out.println("Fecha y hora ingresados con formato: " + conFormato.toString());
//Si queremos retornar en un String con formato personalizado
DateTimeFormatter formatoFechaHora = DateTimeFormatter.ofPattern("dd-MMM-yyyy hh:mm:ss a");
String horaCorta = conFormato.format(formatoFechaHora);
System.out.println("Fecha y hora mostrados con formato: " + horaCorta);
//Extrayendo los datos individualmente
System.out.println("Fecha y hora: "
+ traductor(conFormato.getDayOfWeek().toString()) + ", "
+ conFormato.getDayOfMonth() + " de "
+ traductor(conFormato.getMonth().toString()) + " de "
+ conFormato.getYear() + ". A las "
+ conFormato.getHour() + " horas con "
+ conFormato.getMinute() + " minutos y "
+ conFormato.getSecond() + " segundos");
}
private static String traductor(String eng) {
String esp;
switch (eng) {
case "TUESDAY":
esp = "MARTES";
break;
case "JUNE":
esp = "JUNIO";
break;
default:
esp = eng;
}
return esp;
}
}
Nos producirá una salida similar a esta:
Fecha y hora actual: 2019-10-23T12:44:55.758 Fecha y hora actual desde ints: 2019-10-23T12:31 Fecha y hora con formato por defecto: 1992-06-30T21:11:30 Fecha y hora ingresados con formato: 1992-06-30T21:52 Fecha y hora mostrados con formato: 30-jun-1992 09:52:00 PM Fecha y hora: MARTES, 30 de JUNIO de 1992. A las 21 horas con 52 minutos y 0 segundos
Se creó, además, una función extremadamente simple llamada traductor que convierte los meses y nombres de días de ingles a español.
No hay comentarios:
Publicar un comentario