Java File 類不直接支持 UNC 路徑(如 //192.168.1.100/share/file.txt),需將網絡路徑映射為本地盤符或使用 UNC 格式(Windows 支持)。
File f = new File("//192.168.1.100/share/file.txt"); // 注意雙斜杠開頭
if (f.exists()) { ... }
SmbFile smbFile = new SmbFile("smb://user:pass@192.168.1.100/share/file.txt");
if (smbFile.exists()) { ... }
public class NetworkFileChecker {
public static boolean check(String path) {
File f = new File(path);
if (f.exists()) {
if (f.isFile()) System.out.println("文件存在");
else if (f.isDirectory()) System.out.println("目錄存在");
return true;
}
System.out.println("不存在: " + path);
return false;
}
public static void main(String[] args) {
check("d:/test.xml");
check("o:/test.xml"); // 映射盤符
check("//192.168.1.100/share/學習/學習.txt"); // UNC 路徑
}
}
exists() 返回 false 而不拋異常jcifs:jcifs:1.3.17