gpt4 book ai didi

Java,无法读取文件

转载 作者:行者123 更新时间:2023-11-30 01:44:04 26 4
gpt4 key购买 nike

每当我输入一个名称时,文件就会被创建并且行也在那里,但是当我使用显示方法时,它会吐出该错误,我不确定我的问题出在哪里,而且我对 Java 还很陌生。我在另一个类中有一个方法来保存这些行,但我不认为这就是我的问题所在,而且我有点陷入困境,任何帮助将不胜感激。

    package X;

import java.util.Scanner;
import java.io.*;

public class FileDisplay {
String filename;

public FileDisplay(String name) {name = filename;}

public void display() throws IOException {
File file = new File(filename);
Scanner inputFile = new Scanner(file);
while (inputFile.hasNext()) {
String str = inputFile.nextLine();
System.out.println(str);
}
inputFile.close();
}


}

我运行了代码,每次它都会抛出这个错误:

Exception in thread "main" java.lang.NullPointerException
at java.base/java.io.File.<init>(File.java:276)
at ES1036a.Lab6.FileDisplay.display(FileDisplay.java:12)
at ES1036a.Lab6.FilesDemo.main(FilesDemo.java:27)

这是演示类:

    package X;

import java.util.Scanner;
import java.io.*;
public class FilesDemo {
public static void main(String[] args) throws IOException {
String filename = "lines.txt";

Scanner keyboard = new Scanner(System.in);
System.out.println("What's the filename?");

filename = keyboard.nextLine();

FileSave FilesDemo = new FileSave(filename);
FilesDemo.save("1-Lorem ipsum dolor sit amet\n" +
"2-Consectetuer adipiscing elit\n" +
"3-Sed diam nonummy nibh euismod tincidunt\n" +
"4-Ut wisi enim ad minim veniam\n" +
"5-Quis nostrud exerci tation ullamcorper\n" +
"6-Suscipit lobortis nisl ut aliquip ex ea commodo consequat\n" +
"7-Duis autem vel eum iriure dolor in hendrerit\n" +
"8-Vel illum dolore eu feugiat nulla facilisis at vero eros");


FileDisplay FilesDemo2 = new FileDisplay(filename);

FilesDemo2.display();
}
}

最佳答案

在 FileDisplay 的构造函数中,您未分配名为“filenamed”的属性,请按以下方式更正它:

public FileDisplay(String name) {
/* wrong
the parameter String "name" is reassigned but you need
to assing the class attribute "filneame", this line is wrong:
name = filename;
*/

// correct
filename = name;
}

关于Java,无法读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58823767/

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