2009-05-03 17 views

Odpowiedz

29

Nigdy nie widziałem dobrego rozwiązania tego problemu, ale tak właśnie to zrobiłem.

File temp = File.createTempFile("folder-name",""); 
temp.delete(); 
temp.mkdir(); 
+0

To interesujące podejście. Nie myślałem o tym w ten sposób. – Geo

4

Piszę własne klasy narzędziowe do tworzenia katalogów tymczasowych i do ich wyrzucania, gdy nie są już potrzebne. Na przykład like this.

8

Dowolny powód, dla którego nie można użyć katalogu zdefiniowanego przez właściwość java.io.tmpdir?

tj

String dirName = System.getProperty("java.io.tmpdir"); 
+0

"Plik tymczasowy" z pliku createTempFile jest automatycznie usuwany po wyjściu JVM. Myślę, że OP prosi o ten rodzaj katalogu, więc użycie istniejącego katalogu tmpdir go nie sprawi. (Potrzebowałem czegoś podobnego do pisania testów jednostkowych i użyłem createTempFile + delete + mkdir i utworzyłem tylko "tymczasowe" pliki w tym katalogu - JVM może następnie wykonać porządkowanie, jeśli dobrze pamiętam) –

+1

OK, nie jest automatycznie usuwany .. musisz najpierw zapytać JVM (by usunąćOnExit) –

+0

Tak samo jak na marginesie: możesz łatwo dodać "zniszczenie przy wyjściu JVM", rejestrując hak zamykający. –