gpt4 book ai didi

java - Java 中存在文件吗?

转载 作者:行者123 更新时间:2023-12-01 15:15:46 24 4
gpt4 key购买 nike

我试图检查给定目录位置是否存在文件。

File seacrhFile = new File("D:/input", contract.conf);
if (seacrhFile.exists()) {
returnFile = seacrhFile;
} else {
System.out.println("No such file exists");
}
reutrn returnFile;

这适用于 D:/input 目录场景,但如果我将目录位置更改为 src/test/resources/input 文件夹,那么我将得到 不存在这样的文件,即使该文件存在。

最佳答案

如果您想访问
src/测试/资源/输入
你可能应该使用

System.getProperty("user.dir") + File.separator + "src/test/resources/input"

因为系统属性“user.dir”指向项目位置。

如果您只使用“src/test/resources/input”,您将收到提到的异常,因为文件对象不会在项目位置“启动”。所以你必须手动指定它。

尽管如此,最好使用 getResource-Method 来检索项目中的不同资源,因为如果您使用 jar 文件运行项目,则需要进行调整以使“user.dir”正常工作。

只是类加载器的基本示例:

ClassLoader.getSystemClassLoader().getResource("test/resources/input");

这将返回一个 URL 对象,通过该对象,您可以使用...获取文件对象

URL filePath =  ClassLoader.getSystemClassLoader().getResource("test/resources/input");
File file = new File( filePath.toURI() );

关于java - Java 中存在文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11628038/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com