2012-02-06 22 views
6

Ứng dụng Java có thể biết thư mục hiện tại của nó không. Tôi đang đề cập đến kết quả của pwd.Chương trình Java có thể biết thư mục hiện tại của nó không?

Ví dụ, khi thực hiện

~/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 

Trả lời

12

Có lẽ đây sẽ giúp:

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

Rất hay. Cảm ơn bạn Nim – JAM

+0

@JAM - không phải lo lắng ... – Nim

+0

Mã này làm gì, chính xác? –

7

Bạn có thể sử dụng System.getProperty("user.dir").

+0

Điều đó sẽ trả về thư mục chính của người dùng, không giống với thư mục mà chương trình Java được khởi động từ đó. – Jesper

+4

@ Jesper Không, đó là 'user.home'. 'user.dir' là thư mục làm việc hiện tại (xem danh sách các thuộc tính [ở đây] (http://docs.oracle.com/javase/6/docs/api/java/lang/System.html#getProperties%28%29)) –

+0

Ah! Xin lỗi, không đọc đủ kỹ. – Jesper

4

Đây được gọi là thư mục làm việc. Bạn có thể làm theo hướng dẫn sau:

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

Thư mục chính của người dùng không giống với thư mục làm việc hiện tại. – Jesper

+2

như @isbadawi cho biết đó là user.home. user.dir là thư mục làm việc hiện tại – mmounirou

Các vấn đề liên quan