以下是如何使用files.exists方法来检查目录是否存在,并仅在目录不存在时才创建它的示例代码:
import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class CreateDirectoryIfNotExists { public static void main(String[] args) { String directoryPathString = "C:\\csv\\nov"; // 替换为你的目录路径 Path directoryPath = Paths.get(directoryPathString); String subDirectoryName = "processed"; try { Path path = Paths.get(directoryPath.toAbsolutePath() + "/" + subDirectoryName); // 检查目录是否存在 if (!Files.exists(path)) { // 如果目录不存在,则创建它 Files.createDirectory(path); System.out.println("目录创建成功: " + path); } else { System.out.println("目录已存在: " + path); } } catch (IOException e) { System.err.println("创建目录失败: " + e.getMessage()); e.printStackTrace(); // 打印完整的堆栈信息,便于调试 } } }
代码解释:
注意事项:
总结:
通过使用 Files.exists() 方法预先检查目录是否存在,可以有效地避免 FileAlreadyExistsException 异常,使程序更加健壮。 同时,良好的异常处理能够帮助我们更好地理解和解决潜在的问题。 在实际开发中,请根据具体需求调整代码,并注意处理可能出现的异常。