Hola,
Los siguientes métodos, permiten recibir dos fechas en formato UnixTime y escriben en un System.out.println cual es la fecha mas antigua y retornan cual es la fecha mas reciente en formato UnixTime, en java.
Forma #1 con la clase Instant:
public static Long compareUnixTimesWithInstant(Long unixTime1, Long unixTime2) {
// Convertir los UnixTime a objetos de fecha y hora
Instant date1 = Instant.ofEpochSecond(unixTime1);
Instant date2 = Instant.ofEpochSecond(unixTime2);
// Formateador para mostrar las fechas de forma legible
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")
.withZone(ZoneId.systemDefault());
// Comparar las fechas y mostrar cual es la más antigua
if (date1.isBefore(date2)) {
System.out.println("La fecha mas antigua es: " + formatter.format(date1));
// retorna la fecha mas reciente
return unixTime2;
} else {
System.out.println("La fecha mas antigua es: " + formatter.format(date2));
// retorna la fecha mas reciente
return unixTime1;
}
}
Forma #2 con la clase Date:
public static Long compareUnixTimesDate(Long unixTime1, Long unixTime2) {
// Convertir los UnixTime a objetos Date
Date date1 = new Date(unixTime1 * 1000);
Date date2 = new Date(unixTime2 * 1000);
// Comparar las fechas y mostrar cual es la más antigua
if (date1.before(date2)) {
System.out.println("La fecha mas antigua es: " + date1);
// retorna la fecha mas reciente
return unixTime2;
} else {
System.out.println("La fecha mas antigua es: " + date2);
// retorna la fecha mas reciente
return unixTime1;
}
}
0 comentarios :
Publicar un comentario