2011-09-20 21 views
29

Java programım tarafından oluşturulan yeni dosyaları geçerli zaman damgasıyla adlandırmak istiyorum.Java'da dosya adı olarak geçerli zaman damgası

Bu konuda yardıma ihtiyacım var. Geçerli zaman damgasıyla oluşturulan yeni dosyaları nasıl adlandırırım? Hangi sınıfları dahil etmeliyim?

+0

Aynı anda birden çok dosya oluşturulmuşsa ne olur? Bu bir [XY problemi mi?] (Http://mywiki.wooledge.org/XyProblem) * Gerçekten * ne yapmaya çalışıyorsunuz? – erickson

cevap

94

çok karmaşık almak gerek yok gibi bir şey öneririm vb / karakterleri içermeyen bir format kullanmak gerekir, bu bir astar deneyin şu şekilde bir dosya uzantısıyla:

String fileName = new Date().getTime() + '.txt'; 
+3

dostum, ben bir-liner seviyorum :) +1 –

+0

Güzel basit çizgi – Janath

+0

da "saniyelerle" ekleyin, eğer aynı dakika içinde kaydedildiyse tüm dosyalar üzerine yazılmaz ("yyyyMMddHHmmss'.txt" ") – saigopi

1

Date, SimpleDateFormat ve G/Ç öğelerinde hangi sınıflar gerekli olursa olsun (birçok olasılık vardır).

+0

Soru aix tarafından zaten yanıtlandı, ancak yalnızca sunduğunuz tüm işletim sistemlerinde izin verilen karakterleri kullandığınızdan emin olmayın. SimpleDateFormat kullanın demek istiyorum. – Kashyap

+0

@aix: Uygulamam her 30 dakikada bir yeni dosyalar oluşturur. Bu yüzden dosya adı olarak zaman + tarihine ihtiyacım var. Bunu denedim: 'Dize düzeni = "mm/gg/yyyy"; SimpleDateFormat biçimi = yeni SimpleDateFormat (desen); str = format.format (yeni Tarih()); ' sonra dosyamı str. ".txt" olarak adlandırdım, ancak bana bir hata veriyor. [Hata: 49 \ 20 \ 2011.txt (Sistem belirtilen yolu bulamıyor)]. Ayrıca, şimdiki zamana da ihtiyacım var. Lütfen yardım et. Bu, – Nerd

2

Geçerli saati bir dizeye biçimlendirmek için önerilen aix olarak SimpleDateFormat öğesini kullanın.

String fileName = new SimpleDateFormat("yyyyMMddHHmm'.txt'").format(new Date()); 
+1

çalıştı. çok teşekkürler. – Nerd

3

Sen eklenen akım damgası alabilirsiniz: Sen yyyyMMddhhmm

İlgili konular