我需要一个有效的方法来判断String是否代表文件或目录的路径.Android中的有效目录名是什么?实际上,文件夹名可以包含'.'个字符,所以系统如何理解是存在文件还是文件夹?

推荐答案

假设path是你的String.

File file = new File(path);

boolean exists =      file.exists();      // Check if the file exists
boolean isDirectory = file.isDirectory(); // Check if it's a directory
boolean isFile =      file.isFile();      // Check if it's a regular file

File Javadoc


或者您可以使用NIO class Files并判断以下内容:

Path file = new File(path).toPath();

boolean exists =      Files.exists(file);        // Check if the file exists
boolean isDirectory = Files.isDirectory(file);   // Check if it's a directory
boolean isFile =      Files.isRegularFile(file); // Check if it's a regular file

Java相关问答推荐

如何使用解析器组合子解析Java数组类型签名?

Java:根据4象限中添加的行数均匀分布行的公式

为什么Java中的两个日期有差异?

使用标记时,场景大纲不在多个线程上运行

Spring Boot Maven包

无法使用Java&;TestContainers获取AWS SQS队列的属性

Spring @Value default无法计算表达式

Mac上的全屏截图在使用JavaFX时不能正常工作吗?

如何在Spring Java中从数据库列中获取JSON中的具体数据

Lombok@Nonnull是否也对供应商有影响?

基于配置switch 的@Controller的条件摄取

Spring Boot中的应用程序.properties文件中未使用的属性

插入中的JOOQ序列,设置为VS值

Java List有一个在一个位置添加多个元素的方法,但我找不到一个在一个位置删除多个元素的方法

";home/runner/work/中没有文件...匹配到[**/pom.xml];Maven项目的构建过程中出现错误

如果c不为null,Arrays.sort(T[]a,Comparator<;?super T>;c)是否会引发ClassCastException?

由于可为null,无法在kotlin中实现java接口

读取ConcurrentHashMap中的可变对象

始终使用Spring Boot连接mongodb上的测试数据库

Jackson YAML:支持锚点扩展/覆盖