在我正在处理的程序中,我正在尝试从项目文件夹中打开一个文本文件,以便稍后我可以将文件中的整数读入数组。我目前正在努力让编译器找到该文件。这是我以前做过好几次的事情,但这次我现在收到一个错误,说系统找不到指定的文件。我的代码主类的部分,即文件的读写,如下所示:
if ("input".equals(input)) {
System.out.println("Please enter the name of the input file: ");
String filename = scanIn.nextLine();
Scanner scanner = new Scanner(new File(filename));
BufferedReader br = new BufferedReader(
new InputStreamReader(new FileInputStream(filename)));
int lineCount = 0;
while (br.readLine() != null) {
lineCount++;
}
出现提示时,我输入sample.txt,即项目文件夹中文本文件的名称,它会产生错误。我在这里可以忽略哪些会导致这个问题吗?
编辑:最终目标是将文件中的整数加载到数组中,然后对数组执行快速排序以对其进行排序。
编辑2:回想起来,这听起来像是一个非常愚蠢的错误,但我发现了我的问题。由于此问题已被标记为重复,因此我无法将此问题作为答案发布,因此我将其作为编辑发布。创建文本文件时,文件名已成为" sample.txt.txt"而不是" sample.txt"导致系统无法找到该文件。代码或文件路径没有问题,我在命名文件时只是一个愚蠢的错误。
答案 0 :(得分:-1)
您可以尝试以下代码
ClassLoader cLoader = this.getClassLoader();
InputStream i = cLoader.getResourceAsStream("sample.txt");