2011-04-02 80 views

回答

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

lastModified()返回自1970-01-01以来的毫秒数,Date类也以相同的方式存储其时间。 Date(long)构造函数需要这些毫秒,并用它初始化Date。

+0

毫秒,而不是秒) – Bozho 2011-04-02 21:11:26

+1

+1:日期总是带着毫秒;) – 2011-04-03 06:57:51

+0

+ 1 @彼得:* G ... – Daniel 2011-04-03 08:57:09

2
  1. 获得最后修改的时间戳,如the duplicate of your question

  2. 描述的创建一个新的Date对象,或Calendar对象。 new Date(timestamp)。或者Calendar.getInstance(),然后致电setTimeInMillis(timestamp)。正如其名称所暗示的,时间戳实际上是在数毫秒内(自1970年1月1日)

  3. 然后,您可以通过java.text.SimpleDateFormat

5

格式化日期你得到的是代表数的长号码毫秒自1970年1月1日起过去。这是表示日期的标准方式。

试试这个:

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

,现在你手边有一个Date对象。

您可以使用SimpleDateFormat以可爱的方式打印该日期。

13

只需使用SimpleDateFormat类即可将长期转换为日期。 只有你执行代码:

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