NullPointerExceptionエラー
解決したいこと
CSVファイルから読み込んだデータを表示させるのがゴールのプログラムです。
戻り値、引数をどう設定したらいいのか分かりませんでした。
ご教授頂けると助かります。
発生している問題・エラー
Exception in thread "main" java.lang.NullPointerException: Cannot read the array length because "<local0>" is null
at Sub.bbb(Sub.java:113)
at Main.main(Main.java:7)
該当するソースコード
Main.java
public class Main {
public static void main(String[] args) {
Sub.aaa();
Sub.bbb();
}
}
Sub.java
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
public class Sub {
private static Personal[] list;
public static void aaa() {
// CSVファイルのパス
Path path = Paths.get("./Data.csv");
// 読み込んだCSVファイルの情報を格納するリスト
List<String> csvList = new ArrayList<>();
try {
// CSVファイル読み込み
csvList = Files.readAllLines(path);
} catch (IOException e) {
System.out.println("ファイルの読み込みに失敗しました");
}
ArrayList<Personal> list = new ArrayList<>();
//CSVファイルの情報を格納したリスト分繰り返し
for (String rows : csvList) {
//カンマ区切りの配列を作成
String[] rowArray = rows.split(",");
//インスタンス生成
Personal bean = new Personal();
//Personalにデータを入れる
bean.setName(rowArray[0]);
bean.setAddress(rowArray[1]);
bean.setTel(rowArray[2]);
bean.setAge(rowArray[3]);
list.add(bean);
}
}
public static void bbb() {
// Personalのデータを取り出して表示
for (Personal b : list) {
System.out.println("[" + b.getName() + "][" + b.getAddress() + "][" + b.getTel() + "][" + b.getAge() + "]");
}
}
}
Personal.java
public class Personal {
//名前
private String name;
//住所
private String address;
//電話番号
private String tel;
//年齢
private String age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getTel() {
return tel;
}
public void setTel(String tel) {
this.tel = tel;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
}
0