Convertir una fecha de nacimiento en milisegundos
-
22-09-2019 - |
Pregunta
¿Cómo tomo una fecha de nacimiento ingresada por un usuario y me convierto en milisegundos para poder calcular cuántos años tendrían en un planeta diferente?
Aquí está el código que tengo hasta ahora:
DateFormat df = new SimpleDateFormat("MM dd yyyy");
Date dateBirth = df.parse(birthdate);
Calendar calBirth = new GregorianCalendar();
calBirth.setTime(dateBirth);
Edición 1: Sí, estoy buscando obtener los milisegundos entre la fecha de nacimiento del usuario y la hora actual para dividir eso en los días de un planeta en un año
Solución
DateBirth.GetTime () ¿Te dará la cantidad de milisegundos desde la época, si eso es lo que estás buscando?
EDITAR -
Para obtener la diferencia entre ahora y el cumpleaños, obviamente puede obtener ahora como objeto de fecha, convertirlo a milisegundos y restar - por ejemplo now.GetTime() - dateBirth.GetTime()
.
Otros consejos
Date d = new Date();
long msSinceBirth = d.getTime() - dateBirth.getTime();
Esto supone que el usuario nace en el pasado. Los viajeros del tiempo producirán valores negativos para msSinceBirth
.
No estoy seguro de entender completamente la pregunta, pero el calendario tiene el método correcto ...
getTimeInMillis
public long getTimeInMillis()
Obtiene el tiempo actual de este calendario como largo.
Devoluciones: La hora actual como Millisegundos de UTC de la época.
Ver también:getTime(), setTimeInMillis(long)