テキスト ファイルからタイル マップを読み取る次のコードを記述しましたが、理由がわかりませんが、null ポイント例外エラーが発生します。
リーダーのコード:
BufferedReader br = new BufferedReader(new FileReader(s));
readMapWidth = Integer.parseInt(br.readLine());
readMapHeight = Integer.parseInt(br.readLine());
map = new int[readMapHeight][readMapWidth];
for(int row = 0; row < readMapHeight; row++) {
String line = br.readLine();
System.out.println(line);
String[] tileValues = line.split(",");
for(int col = 0; col < readMapWidth; col++){
map[row][col] = Integer.parseInt(tileValues[col]);
}
}
}
テキスト ファイルの内容:
コマンド コンソールがエラーとして返すもの:
java.lang.NullPointerException
at TileMap.<init>(TileMap.java:58)
これは行です:
String[] tileValues = line.split(",");
線は完璧に読み取れ、マップを画面に描画できます。ただし、後でパスファインディングに使用するために実際に保存された2次元配列が必要ですが、この行はnull値を返しているため、理由がわかりません。
「System.out.println(line)」が私を混乱させるのは次のとおりです。
[final line of the map here, map lines print as normal]
null
ヌル?わかりません。私のテキスト ファイルには 27 行しかなく、分割に関する null 例外はどこから来ているのでしょうか?