テキスト ファイルから 2 次元配列に値を追加しようとすると、nullPointerException が発生します。最初の 2 つの値によって、行と列が決まります。何がそれを投げているかについてのアイデア。例外処理と print ステートメントを無視します。配列を初期化しようとしていますが、戻って少し強化します。
public Help(String filename) throws FileNotFoundException,
InvalidFileFormatException {
this.filename = filename;
System.out.println("Reading in file: " + filename);
String number = "";
int row = 0;
int col = 0;
int count = 0;
try {
Scanner inputFile = new Scanner(new File(filename));
while (inputFile.hasNextInt()) {
row = Integer.parseInt(inputFile.next());
col = Integer.parseInt(inputFile.next());
System.out.println("Row : " + row);
System.out.println("Col : " + col);
baseMap = new double[row][col];
System.out.println(baseMap[2][4]);
for (int i = 0; i < baseMap.length; i++){
for (int j = 0; j < baseMap[i].length; j++){
baseMap[i][j] = Double.parseDouble(inputFile.next());
}
}
}
System.out.println(baseMap[2][4]);
} catch (Exception e) {
System.out.println(e.toString());
}
OUTPUT ファイルの読み取り: sampleMap2.txt 行: 5 列: 5 0.0 スレッド「メイン」で例外 java.lang.NullPointerException