Время последнего изменения файла - это 13-значное число. Что это значит? - PullRequest
1 голос
/ 25 февраля 2010
    long lastmodify   =   f.lastModified();
    System.out.println("File Lost Modify:"+lastmodify);

Я использую приведенный выше код файла ("f"), но он отображает время последнего изменения: 1267082998588 Я сбиваю с толку, это время или нет.? Собственно что это такое?

Ответы [ 6 ]

5 голосов
/ 01 ноября 2011

Оно говорит , что дает ответ в миллисекундах, но, по-видимому, нет, оно дает ответ в секундах , умноженном на тысячу:

bsh % File x = new File("/vmlinuz");     
bsh % print(x.lastModified());      
1318019877000

В Linux, даже с ext4 (с микросекундным разрешением) все файлы заканчиваются на 000! Очевидно, в Windows вы получите шум в конце, но его не следует принимать за миллисекунды, это, как говорится, «приближение»

5 голосов
/ 25 февраля 2010

Ознакомьтесь с документацией File . Возвращает миллисекунды с 00:00:00 по Гринвичу, 1 января 1970 года.

Вы можете сделать это вместо

long lastmodify = f.lastModified();
Date modified = new Date(lastmodify);
System.out.println("File Lost Modify:"+ modified);
3 голосов
/ 25 февраля 2010

Это количество миллисекунд с начала эпохи Unix.

Попытка:

import java.text.*;
import java.util.*;
System.out.println(new SimpleDateFormat().format(new Date(f.lastModified())));

Вы можете делать все что угодно с датой. См. Дата , SimpleDateFormat и, в частности, GregorianCalendar .

1 голос
/ 26 февраля 2010
    long lastmodify   =   f.lastModified();
    Date dt=new Date();
    SimpleDateFormat date   = new SimpleDateFormat("dd/MM/yyyy");
    String modify=date.format(lastmodify);

Это также один из ответов, которые я получил ..

1 голос
/ 25 февраля 2010

Посмотрите на Javadoc метода в классе File (это достаточно ясно):

public long lastModified ()

Возвращает время последнего изменения файла, обозначенного этим абстрактным путем.

Возвращает:
Длинное значение, представляющее время последней модификации файла, измеренное в миллисекундах с начала эпохи (00:00:00 по Гринвичу, 1 января 1970 г.) или 0L, если файл не существует или если I Ошибка ввода / вывода

0 голосов
/ 25 февраля 2010

Это дата [в миллисекундах], когда файл был отредактирован. Это количество миллисекунд, прошедших с 1 января 1970 года [также известное как эпоха Unix]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...