java - tiempo - ¿Cómo transformar currentTimeMillis en un formato de fecha legible?
seconds java (2)
Esta pregunta ya tiene una respuesta aquí:
Quiero utilizar currentTimeMillis
dos veces para poder calcular una duración pero también quiero mostrar la hora y la fecha en formato legible por el usuario. Estoy teniendo problemas ya que currentTimeMillis
es bueno para el cálculo, pero no puedo ver una función incorporada para convertir a buen tiempo o hora / fecha.
yo suelo
android.text.format.DateFormat df = new android.text.format.DateFormat();
df.format("yyyy-MM-dd kk:mm:ss", new java.util.Date());
para producir una buena hora y fecha y lo que en última instancia me gustaría hacer es mostrar mi valor currentTimeMillis
resultante en android.text.format.DateFormat df = new android.text.format.DateFormat();
p.ej
android.text.format.DateFormat df = currentTimeMillis();
cuando lo intento consigo
Tipo no coincidente: no se puede convertir de formato largo a DateFormat
Intenté usar algo de fundición pero no veo cómo lograrlo.
Funcionará.
long yourmilliseconds = System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("MMM dd,yyyy HH:mm");
Date resultdate = new Date(yourmilliseconds);
System.out.println(sdf.format(resultdate));
Hay una manera más simple en Android
DateFormat.getInstance().format(currentTimeMillis);
Además, Date está en desuso, por lo tanto, use la clase DateFormat .
DateFormat.getDateInstance().format(new Date(0));
DateFormat.getDateTimeInstance().format(new Date(0));
DateFormat.getTimeInstance().format(new Date(0));
Las tres líneas anteriores darán:
Dec 31, 1969
Dec 31, 1969 4:00:00 PM
4:00:00 PM 12:00:00 AM