2011-04-02 16 views

Respuesta

40
Date d = new Date(file.lastModified()); 

lastModified() devuelve los milisegundos desde el 1970-01-01, y la clase Fecha almacena su vez también en la misma forma. El constructor Fecha (larga) tarda estos milisegundos e inicializa la Fecha con él.

+0

milisegundos, no segundos;) – Bozho

+1

1: Fecha siempre tomó milisegundos;) –

+0

+ 1 @ Peter: * g ... – Daniel

2
  1. conseguir la última marca de tiempo modificado, como se describe en the duplicate of your question

  2. Crear un nuevo Date objeto o Calendar objeto. new Date(timestamp). O Calendar.getInstance() y luego llame al setTimeInMillis(timestamp). Como su nombre indica, la marca de tiempo es realmente un número de milisegundos (desde el 1 Ene 1970)

  3. apto para procesar la fecha a través de java.text.SimpleDateFormat

5

Lo que se obtiene es un número de larga representa el número de Millis transcurrió desde el 1 de enero de 1970. Esa es la forma estándar de representar las fechas.

intente esto:

java.util.Date myDate = new java.util.Date(theFile.lastModified()); 

y ahora tiene un objeto Date a mano.

Puede usar SimpleDateFormat para imprimir esa fecha de una manera más linda.

13

Simplemente usa la clase SimpleDateFormat para convertirla a la fecha. Sólo se ejecuta código:

new SimpleDateFormat("dd-MM-yyyy HH-mm-ss").format(
    new Date(new File(filename).lastModified()) 
); 
Cuestiones relacionadas