爲什麼這個返回false在Java?UNC路徑.exists()返回false
new File("\\\\10.10.1.4").exists()
但
new File("\\\\10.10.1.4\\dir").exists()
返回true。
如果我打開的第一個地址(沒有「目錄」)在Windows Explorer中我看到的內容,所以我不認爲這是一個權限問題因爲窗戶可以看到它只是罰款
同樣的事情發生與File.listFiles()。第一個地址返回null但第二返回的實際內容
最後,如果一切都失敗了,有沒有其他的方式來測試,如果一個UNC地址(只是沒有目錄IP)存在並列出其內容?
如何列出10.10.1.4的內容然後?我需要遍歷整個樹,所以我只是沒有'dir',我需要看10.10.1.4下的所有東西。尾部的斜線不起作用 – Hilikus 2012-08-07 14:01:35
另外,我不認爲我同意你的類比。你的比喻是,如果我試圖打開「\\ 10.10.1」,這是一個不完整的地址。 \\ 10.10.1.4是一個完整的非模糊地址,可解析爲單個設備。如果\\ 10.10.1.4 \ dir \列出了10.10.1.4中的'dir'的內容,爲什麼\\ 10.10.1.4列出了設備共享中的根目錄?這聽起來像是說C:\不是一個有效的路徑,因爲它有一個目錄,所以我應該嘗試C:\ dir – Hilikus 2012-08-07 14:50:04
@Hilikus \\ 10.10.1.4它不是根設備,它沒有與File.listRoots一起列出,這是一項提供共享點的服務。您可以嘗試查看http://stackoverflow.com/questions/8480622/shares-under-ip – MadProgrammer 2012-08-07 19:34:05