如何判断路径字符串是目录还是文件名?

问题描述 投票:0回答:1

问题描述

我正在开发一个 Java 项目,该项目需要确定给定的字符串是否表示目录或文件名的路径。此 path 字符串可能会有所不同,并且可能指向计算机上当前不存在的目录。目标是:

  1. 识别路径字符串是目录还是文件名。

路径字符串示例

  1. path="/home/{host}/project/phase1/phase2" or path``="/home/{host}/project/phase1/phase2/" 
  2. path="/home/{host}/project/phase1/phase2/report.txt"

挑战

  1. 区分目录路径和文件名。
  2. 处理丢失目录的创建。

尝试使用java中文件类的一些预定义方法和一些围绕字符串处理的逻辑,但想要一个严格的解决方案来解决这个问题。

我正在寻求建议或最佳实践,以稳健地区分路径字符串中的目录路径和文件名。此外,我希望得到有关有效处理不存在目录的创建和文件放置的建议。

预先感谢您的帮助!

java string path directory sftp
1个回答
0
投票

系统无法告诉你一个 String 是否代表一个文件或目录,据我所知,如果它不存在于文件系统中,但系统中可以通过以下方式区分

Files.isDirectory(path);   //returns true if yes 

Files.isRegularFile(path);  //returns true if yes 

对于那些不在您的系统上的人,可以查看他们的结尾,例如report.txt - (.txt) 告诉我们它是一个文件,没有它就是一个目录!

© www.soinside.com 2019 - 2024. All rights reserved.