保存された txt ファイルから ArrayList 内の要素にデータを転送しようとすると、かなりイライラする null 問題が発生します。bufferedReader.readLine() を使用すると、txt ファイル内のデータが消去されるため、後でプログラムでファイルを再度読み取ろうとすると、一連の null エントリになります。ファイルを 2 回読み取る必要があると思います。1 回目は txt ファイルの行数を調べ、2 回目は for ループを使用して行を txt ファイルから ArrayList に転送します。以下のコードを含めましたので、どんな助けと洞察も大歓迎です! 最終的に、このtxtファイルからすべてのデータをarrayListに転送する必要があります...
System.out.println("What is the name of the file you would like to open?");
reader.nextLine();
String name = reader.nextLine() + ".txt";
System.out.println("Looking for file...");
try {
FileReader fr = new FileReader(name);
BufferedReader buf = new BufferedReader(fr);
//Create a temporary ArrayList to store data
ArrayList<String> temp = new ArrayList<String>();
//Find number of lines in txt file
int numLine=0;
String line = null;
while ((line = buf.readLine()) != null) {
numLine++;
}
//write data from txt file to ArrayList temp
for (int i = 0; i < numLine; i++) {
temp.add(buf.readLine());
}
}
catch(IOException e) {
e.printStackTrace();
}
System.out.println("\n *********************");
}