Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java在/res文件夹中查找文件并使用Scanner_Java_File_Filenotfoundexception - Fatal编程技术网

Java在/res文件夹中查找文件并使用Scanner

Java在/res文件夹中查找文件并使用Scanner,java,file,filenotfoundexception,Java,File,Filenotfoundexception,我的文件位于My/res中,更具体地说是在/res/Menus/CharSelect中。我已经进入了构建路径,并确保res文件夹是类路径。但是,我的新扫描仪(文件)导致了NullPointerException。 当我执行file.exists()时;它返回FALSE。。。我不知道为什么。我100%确信该文件确实存在,并且它位于CharSelect文件夹中。 有人能帮忙吗?提前谢谢 file = new File(getClass().getResource("/Menus/CharSe

我的文件位于My/res中,更具体地说是在/res/Menus/CharSelect中。我已经进入了构建路径,并确保res文件夹是类路径。但是,我的新扫描仪(文件)导致了NullPointerException。 当我执行file.exists()时;它返回FALSE。。。我不知道为什么。我100%确信该文件确实存在,并且它位于CharSelect文件夹中。 有人能帮忙吗?提前谢谢

    file = new File(getClass().getResource("/Menus/CharSelect/Unlocked.txt").getPath());
    try
    {
        scanner = new Scanner(file);
    }
    catch (FileNotFoundException e)
    {
        e.printStackTrace();
    }

不要那样做。当您创建一个jar时,您将不能作为
文件
对象访问该文件,而必须从中获取
输入流

相反,请将以下选项与一起使用:


不要那样做。当您创建一个jar时,您将不能作为
文件
对象访问该文件,而必须从中获取
输入流

相反,请将以下选项与一起使用:


someClass.getResource
解析相对于
someClass
位置的路径。将文件移动到路径\u到\u此\u类\u路径/菜单/CharSelect/Unlocked.txt,操作必须成功

someClass.getResource
解析相对于
someClass
位置的路径。将文件移动到路径\u到\u这个类\u路径/Menus/CharSelect/Unlocked.txt,操作必须成功

谢谢!我会做一个罐子,弄不明白为什么找不到它。让我的生活变得轻松多了,伙计。@Evannud不客气:)别忘了关闭小溪(我编辑了我的答案,我们从不太谨慎)。谢谢你!我会做一个罐子,弄不明白为什么找不到它。让我的生活轻松多了,伙计。@Evannud不客气:)别忘了关上小溪(我编辑了我的答案,我们从不太谨慎)。
try (InputStream is = getClass().getResource("/Menus/CharSelect/Unlocked.txt").openStream()) {
    scanner = new Scanner(is);
    ...
} // is.close() called automatically by try-with-resource block (since Java 7)