2012-02-06 13 views
6

Czy aplikacja Java może znać własny katalog bieżący. Mam na myśli wynik pwd.Czy program Java może znać swój bieżący katalog?

Na przykład, kiedy wykonywane

~/Documents/workspace/Project/bin $ java com/foo/bar/baz/Runner files/text1.txt 
program should know ~/Documents/workspace/Project/bin 


~/Documents/workspace/Project $ java com/foo/bar/baz/Runner files/text1.txt 
program should know ~/Documents/workspace/Project 

Odpowiedz

12

Może to pomoże:

File cwd = new File("."); 
+0

Bardzo fajnie. Dziękuję Nim – JAM

+0

@JAM - nie martw się ... – Nim

+0

Co dokładnie robi ten kod? –

7
+0

To spowoduje powrót do katalogu domowego użytkownika, który nie jest tym samym, co katalog, z którego uruchomiono program Java. – Jesper

+4

@Jesper Nie, to jest 'user.home'. 'user.dir' jest bieżącym katalogiem roboczym (zobacz listę właściwości [tutaj] (http://docs.oracle.com/javase/6/docs/api/java/lang/System.html#getProperties%28%29)) –

+0

Ah! Przepraszam, nie czytałem wystarczająco uważnie. – Jesper

4

Nazywa się to katalogiem roboczym. Można go uzyskać za pomocą następującej instrukcji:

System.getProperty("user.dir"); 
+0

Katalog domowy użytkownika nie jest taki sam jak bieżący katalog roboczy. – Jesper

+2

jak @isbadawi powiedział, że to user.home. user.dir jest bieżącym katalogiem roboczym – mmounirou

Powiązane problemy