2013-07-05 28 views
5

Android'de dosya oluşturma tarihi nasıl alınır. Ben dosya.lastModified() hakkında biliyorum, ama gerçekten OS özelliklerinde Dosya özelliklerinde görebileceğiniz oluşturma tarihine ihtiyacım var.Oluşturulma tarihi dosya içinde android

Birisi bu görevin çözümünü biliyorsa, lütfen bu mesajın altına yazın. Teşekkürler!

cevap

4

Oluşturma tarihleri ​​her işletim sistemi tarafından desteklenmez. Bu yüzden Java'nın bir dosyanın oluşturulma tarihini elde etmek için bir yöntemi yoktur. Son zamanlarda bu problemle karşılaştım.

Ne yaptım dosya için ek olarak zaman damgasını eklemekti. Eğer daha sonra dosya için baktığınızda

File f = new File("myFile-" + System.currentTimeMillis()); 

, sen apendiksi ayıklamak ve oluşturulma tarihi var bulmak için bir tarihe geri dönüştürmek mümkün olacak. Sen android komut dosyası yürütme için açıklanan here

stat <filepath> 

gibi bash komut veya komut dosyası yürütme yoluyla oluşturulma tarihi alabilirsiniz:

String fileName = f.getName(); 
String[] split = fileName.split("-"); 
long timeStamp = 0; 

try { 
    timeStamp = Long.parseLong(split[1]); 
} catch(NumberFormatException nfe) { 
    nfe.printStackTrace(); 
} 

System.out.println("Creation date for file " + f + " is " + new Date(timeStamp)); 
+0

Aslında dosya için bazı kopyalama koruması için oluşturma tarihine ihtiyacım var, bu nedenle bu çözüm bana uymuyor. –

-1

Ben gereken bazı biri olabilir, benim sorunun çözümü bulmak:

p = Runtime.getRuntime().exec("stat " + /mnt/sdcard01/somefile); 
p.waitFor(); 

BufferedReader reader = 
    new BufferedReader(new InputStreamReader(
p.getInputStream())); 
String line = reader.readLine(); 
while (line != null) { 
line = reader.readLine(); 
} 
+1

Paylaştığınız blogda yazar, "Oluşturma Zamanı" nın bir yazım hatası olduğu ve Linux/Unix'in oluşturma süresini desteklemediği yönünde yorumlarda bulundu. –

İlgili konular