一、概述
通过new File(filePath) 获取文件对象file,通过file.isDirectory()判断传入的路径是否是文件夹,
但是这种方式只能适配于文件夹已经存在的情况
二、详解
当文件夹已经存在时,使用isDirectory方法可以判断传入的路径是否是文件夹
String path = "D:\repo\JavaDemo\FileTransfer\static\service\file1";
File file = new File(str);
System.out.println(file.isDirectory()); // true
但是,当你传入的路径在磁盘目录中不存在时,就无法判断,会一直返回false
String path = "D:\repo\JavaDemo\FileTransfer\static\service\zhangsan";
File file = new File(str);
System.out.println(file.isDirectory()); // false
三、解决方案
可以使用正则表达式进行判断,但是路径的结尾一定要加 \
String path = "D:\repo\JavaDemo\FileTransfer\static\service\zhangsan\\";
if(str.matches("^[A-z]:\\\\(.+?\\\\)*$")){
System.out.println("文件夹!!!");
}