Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.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 文件位于项目文件夹中时出现“找不到文件”错误_Java - Fatal编程技术网

Java 文件位于项目文件夹中时出现“找不到文件”错误

Java 文件位于项目文件夹中时出现“找不到文件”错误,java,Java,当我运行这段代码时,我得到了这个错误 import java.io.*; import java.util.Scanner; public class Test { /** * @param args */ public static void main(String[] args) throws FileNotFoundException { File test = new File("test.txt"); Scanner

当我运行这段代码时,我得到了这个错误

import java.io.*;
import java.util.Scanner;
public class Test {
    /**
     * @param args
     */
    public static void main(String[] args) throws FileNotFoundException {
        File test = new File("test.txt");
        Scanner read = new Scanner (test);
        String input;
        input = read.next();
        System.out.println (input);
    }
}
我尝试了这个,但是我得到了一个NullPointerException错误


这适用于小程序。

启动程序时,您必须与
test.txt
位于同一目录中。例如:

InputStream file = getClass().getResourceAsStream("highScore.txt");
BufferedReader br = new BufferedReader (new InputStreamReader(file,"UTF-8"));
String text;
text = br.readLine();
while (text!=null) {
    System.out.println (text);
}
或者,您可以提供文件的完整路径:

cd dir/with/textfile
ls
  test.txt
java -cp my.jar com.toby.guo.Test

当您使用
新文件(“test.txt”)读取文件时文件应直接位于java程序的当前工作目录中

或者,您也可以将文件与Test.java放在一起,像这样读取:

File test = new File("/home/dir/with/textfile/test.txt");

您在哪里添加了“test.txt”文件?相关:此目录在哪里?我试着用这种方式阅读它,但我不知道如何将inputstream转换成字符串。在这段视频中:,那个家伙把文件放在项目文件夹中,它成功了。
File test = new File("/home/dir/with/textfile/test.txt");
Test.class.getResourceAsStream("test.txt");