2013-04-02 20 views
5

Potrzebuję uzyskać atrybut czasu utworzenia pliku na OS X Lion. Próbowałem z Java nio, ale zwraca czas modyfikacji Zamiast:Czas utworzenia pliku w OSX przy użyciu Java 7

BasicFileAttributes attr = Files.readAttributes(path, BasicFileAttributes.class);  
System.out.println("Creation time: " + attr.creationTime()); 

Przeczytałem podobne pytania (Determine file creation date in Java) i wiem, że niektóre systemy plików nie obsługują znaczniki czasu utworzenia pliku, ale HFSP does więc powinnam 't Metoda BasicFileAttributes.creationTime zwraca właściwą wartość na OS X?

+0

poprosiłem w forach Oracle i jest to błąd w Javie 7. Złożyłem go do bazy danych Java 7 błędów. – Ivan

Odpowiedz

0

Nie wiem, dlaczego, ale widzisz ten sam znacznik czasu dla nich wszystkich:

System.out.println("creationTime: " + attr.creationTime()); 
System.out.println("lastAccessTime: " + attr.lastAccessTime()); 
System.out.println("lastModifiedTime: " + attr.lastModifiedTime()); 
+0

Nie, tylko dla createTime i lastModifiedTime. – Ivan

+0

Kiedy utworzyłeś plik? Czy sprawdziłeś atrybuty pliku, tj. Czas utworzenia i zmodyfikowany czas zaraz po utworzeniu? – sreeprasad

+0

Porównuję wynik z datą utworzenia pokazaną za pomocą polecenia "ls -lU". – Ivan