csv ファイルを解析するためのユーティリティ メソッドを作成しています。何らかの理由で、このメソッドは、マップのリストへの挿入中にヌル ポインター例外を示しています。理由はわかりません。誰かがこれに目を向けて、なぜこれが起こっているのか説明できますか? これが nullpointer 例外のポイントです。
record.put(header[i].toString(), nextLine[i].toString());
解析するファイルは次のとおりです。
id;state;city;total_pop;avg_temp
1;Florida;Miami;120000;76
2;Michigan;Detroit;330000;54
3;New Jersey;Newark;190000;34
そしてコード:
public class FileParserUtil {
public List<Map<String, String>> parseFile(String fileName, char seperator)
throws IOException {
CSVReader reader = new CSVReader(new FileReader(fileName), seperator);
Map<String, String> record = null;
List<Map<String, String>> rows = null;
// int colcnt = reader.readNext().length;
String[] header = reader.readNext();
String[] nextLine;
while ((nextLine = reader.readNext()) != null) {
for (int i = 0; i< nextLine.length; i++){
System.out.println(header[0]);
System.out.println(nextLine[0]);
System.out.println(header[1]);
System.out.println(nextLine[1]);
System.out.println(nextLine.length);
record.put(header[i].toString(), nextLine[i].toString());
}
rows.add(record);
}
reader.close();
return rows;
}
}