Tôi đang chạy Windows và tôi đang cố gắng tham khảo một thư mục. chức năng của tôi bắt đầu ra như thế này:Làm thế nào để tôi tham khảo một thư mục trong Java?
File file = new File("C:\\somedir\\report");
if (!file.exists()) {
file.mkdirs();
}
doStuffWith(file);
tôi nhận được một NullPointerException trong doStuffWith
chức năng, khi tôi cố gắng gọi listFiles
. Tôi đã xem C: \ somedir và tôi đã tìm thấy gì - có một tệp gọi là "báo cáo" không có phần mở rộng, và cũng có một thư mục có tên là "báo cáo"! Điều dường như xảy ra là đối tượng file
đang đề cập đến báo cáo tệp thay vì thư mục . Làm cách nào để đảm bảo rằng tôi đang đề cập đến thư mục chứ không phải tệp?
Bạn đã thử tệp File = new File ("C: \\ somedir \\ report \\"); (lưu ý dấu gạch chéo). Không có ý tưởng nếu điều đó hoạt động nhưng giá trị một xây dựng nhanh chóng và thử nghiệm. – Paolo
Loại hệ điều hành nào cho phép điều này? Tôi đã ấn tượng rằng Windows không cho phép điều này. Có thể là thư mục của bạn có một số ký tự vô hình trong tên (một không gian, ví dụ)? –
Tôi chỉ cố gắng tạo một thư mục có tên là "Thư mục" và một tệp mở rộng có tên "Thư mục" và các cửa sổ đã phàn nàn về nó. Tôi đang chạy Windows XP SP3 32-bit. –