当试图将数据从保存的 txt 文件传输到 ArrayList 中的元素时,我遇到了一个相当烦人的 null 问题。似乎当我使用 bufferedReader.readLine() 时,它会擦除 txt 文件中的数据,因此每当我稍后在程序中再次尝试读取文件时,它只是一系列空条目。我相信我需要阅读两次文件;一次是查找 txt 文件中的行数,第二次是使用 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 *********************");
}