Java 从文本读取时出现NullPointerException错误
我在以下方面出错:Java 从文本读取时出现NullPointerException错误,java,processing,Java,Processing,我在以下方面出错: line = node_reader.readLine(); 当文本文件为空时,我得到一个NullPointerException错误。如果文本中有数据,我不会得到错误。我做错了什么 void file_open () { String line = "test"; BufferedReader node_reader; node_reader = createReader("nodedata.txt"); while (line !=n
line = node_reader.readLine();
当文本文件为空时,我得到一个NullPointerException
错误。如果文本中有数据,我不会得到错误。我做错了什么
void file_open () {
String line = "test";
BufferedReader node_reader;
node_reader = createReader("nodedata.txt");
while (line !=null ) {
try {
line = node_reader.readLine();
if ( line != null ) {
String[] pieces = split(line, TAB);
int a = int(pieces[0]);
int b = int(pieces[1]);
int c = int(pieces[2]);
int d = int(pieces[3]);
int e = int(pieces[4]);
listofNodes.add(new Node(a, b, e)); //
}
} catch (IOException e) {
e.printStackTrace();
line = null;
}
}
}
这是文本文件:
138 102 100 36 0
95 293 100 36 1
如何创建BufferReader?尝试:
BufferedReader node_reader
= new BufferedReader(new FileReader("nodedata.txt"));
问题在于
node_reader = createReader("nodedata.txt");
在这个方法中,文件可能没有正确打开。转到此方法并验证该方法是否正确创建了BufferedReader。NullPointerException发生在哪里?on:line=node_reader.readLine();对我来说这看起来不是有效的代码<代码>整数(件[0])?请提供一个简短但完整的程序来演示这个问题。很抱歉,这是一个完美的例子,说明了如何避免提问。@baris22第一个错误必须出现在
createReader(“nodedata.txt”)
此方法返回一个null
。因此是指定行中的NPE
。在处理过程中,您不能使用FileReader
,而是IDE提供给您createReader()
,并返回一个BufferedReader。。。我不能告诉你他们为什么做出这个决定!要使用它,您必须导入java.io.FileReader