1
我對Java相當陌生,而且我很難理解掃描器和異常。它在「while(!line.matches(」[\ n \ r] +「))」中顯示NullPointerException。我不確定爲什麼會發生這種情況。我已初始化行變量,並假設如果掃描儀的下一行是斷行,while循環應該結束。如果下一行爲空,那麼整個外循環應該結束。爲什麼這會返回一個NullPointerException?解析Java中的文本文件 - 需要幫助理解NullPointerException
public class Readfile {
private static int inputs = 0;
public void main(String filename) throws Exception {
URL url = getClass().getResource(filename);
File file = new File(url.getPath());
parsefile(file);
}
void parsefile(File file) throws Exception {
ArrayList<String[]> Inputs = new ArrayList<String[]>();
BufferedReader br = new BufferedReader(new FileReader(file));
String line = br.readLine();
while (line != null){
LinkedList currentinput = new LinkedList();
if (line.contains("Input")){
while (! line.matches("[\\n\\r]+")) {
System.out.println(line);
line = br.readLine();
}
}else{
line = br.readLine();
}
}
}
}
這是有道理的,謝謝! – stealingbikes