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