我需要一個指向目錄的文件對象(可能不存在)。我怎麼做?獲取目錄的文件對象
即使我這樣做
File dir = new File("/tmp/something/"); // with trailing slash
dir.isDirectory()
是false
。然後我嘗試了dir.mkdir()
,它返回false,爲什麼?我不需要該目錄存在,實際上,我希望它指向一個不存在的目錄(我正在測試)。我怎樣才能做到這一點?
我需要一個指向目錄的文件對象(可能不存在)。我怎麼做?獲取目錄的文件對象
即使我這樣做
File dir = new File("/tmp/something/"); // with trailing slash
dir.isDirectory()
是false
。然後我嘗試了dir.mkdir()
,它返回false,爲什麼?我不需要該目錄存在,實際上,我希望它指向一個不存在的目錄(我正在測試)。我怎樣才能做到這一點?
使用dir.mkdirs()
mkdirs()
將產生的全部指定的目錄路徑mkdir()
只會造成最底層的目錄,如果沒有它不能找到它試圖創建目錄的父目錄。
不知何故,它仍然返回false。代碼評估爲'new File(「/ tmp/nonexistant」)',我應該可以寫入tmp,並在這裏創建不存在的最新錯誤? –
另外我只想獲得File對象而不創建目錄,是否有可能? –
File對象需要文件的路徑,因此目錄是需要的,但是你可以將文件保留在現有目錄中。不需要生成 – Kick
尾部的斜線並不重要。 File.isDirectory返回false,因爲它返回true當且僅當此抽象路徑名錶示的文件存在並且是來自javadoc的目錄
「true當且僅當此抽象路徑名錶示的文件存在並且是一個目錄「
如果文件不存在isDirectory()返回false。如果你正在進行測試,可能使用存根可能是一個更好的選擇,在單元測試中最好儘量不要觸及文件系統等外部資源。
您已擁有。 'dir.isDirectory()'返回'false',文件夾不存在。 ;) – Hannes
[Documentation](http://docs.oracle.com/javase/7/docs/api/java/io/File.html#isDirectory()):「如果並且只有**,如果文件這個抽象路徑名存在**並且是一個目錄;否則爲false「 –