gpt4 book ai didi

java - 无法使用相对路径检索文件

转载 作者:行者123 更新时间:2023-12-02 11:32:12 24 4
gpt4 key购买 nike

我一直在网上寻找这个看似简单问题的解决方案,但我总是遇到 FileNotFoundException。我在 Eclipse Oxygen 上使用 Java 8,无法从绝对路径或相对路径检索我的 txt 文件。正如其他SO answers中所建议的那样我得到了当前目录的路径,我想这是 txt 文件加载的位置:

路径path = FileSystems.getDefault().getPath("").toAbsolutePath();

这显示我的目录为E:\eclipse-java-oxygen-R-win32\HashMap

但是,当我将 txt 文件添加到该项目目录(包含 srcbin 目录)时,当我编写以下内容时,它仍然找不到该文件:扫描仪输入 = new Scanner(new File("free.txt"))

我什至尝试了绝对路径: Scanner input = new Scanner(new File("E://eclipse-java-oxygen-R-win32//HashMap//free.txt"));

我在下面提供了 free.txt 文件位置的屏幕截图。

enter image description here我们将非常感谢您的帮助。

最佳答案

嗯,让我们尝试将事情分开,以便我们知道问题到底是什么。您还可以尝试通过打印文件异常的确切错误来获取更明确的错误消息。像这样的事情:

catch (IOException e) { 
System.out.println("IOException caught -- ");
System.out.println(e.getMessage());
}

但更进一步。您的行:Scanner input = new Scanner(new File("free.txt"))可以拆分。

试试这个:

String file_name="free.txt";
File file_input = new File(file_name);
if (!file_input.exists())
abort("FileInput: no such source file: " + file_name);
if (!_file_input.isFile())
abort("FileInput: can't open a directory: " + file_name);
if (!file_input.canRead())
abort("FileInput: source file is unreadable: " + file_name);

然后运行

try {
`Scanner input = new Scanner(file_input)`
catch (FileNotFoundException e) {
e.printStackTrace();
}

至少这应该告诉您有关错误的更多信息并为您进行调试。

关于java - 无法使用相对路径检索文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49211737/

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