我正在閱讀一個文本文件,每個對象有五行信息,每行一個。沒有換行符。有了這些信息,我將它填充到一個ArrayList中。從那裏我可以修改它。就像添加新對象一樣,刪除並打印一組對象。該方法似乎是工作文件,因爲如果我放入一行來打印ArrayList,它將打印修改後的列表。如何回寫到.txt文件?
我無法保存的ArrayList到一個新的.txt文件。一個新文件被創建,但它是空白的。我不知道爲什麼,因爲像我說的,每次選擇一個方法來修改我的ArrayList,它會返回新的列表。
讀入.txt文件的方法。
public void loadData(File fileName) {
Scanner inputFile = null;
try {
inputFile = new Scanner (new File("textImport.txt"));
}
catch (Exception FileNotFoundException) {
System.out.println("ERROR: " + FileNotFoundException.getMessage());
System.exit(1);
}
while (inputFile.hasNext()) {
String fileName = inputFile.nextLine();
String fileGrade = inputFile.nextLine();
String fileMajor = inputFile.nextLine();
int fileYear = Integer.parseInt(inputFile.nextLine());
double fileId = Double.parseDouble(inputFile.nextLine());
Student stu = new Student (fileName , fileGrade , fileMajor ,
fileYear , fileId);
studentList.add(stu) ;
}
}
我試圖導出文件。
public void save() {
PrintWriter outputFile = null;
try {
outputFile = new PrintWriter("textExport.txt");
}
catch (IOException e) {
e.printStackTrace();
}
while (inputFile.hasNextLine()) {
String line = inputFile.nextLine();
outputFile.write(line);
outputFile.close();
}
}
在你的'save'方法中,你有'inputFile'的引用。是重新宣佈還是它是同一個對象? – christopher 2013-04-07 19:54:14
爲什麼在while循環中關閉inputFile和outputFile?循環後你不應該關閉嗎? – Marcellus 2013-04-07 19:55:07
我不確定......這是在我的筆記中。當我打字時,我不明白爲什麼它在那裏。 – trama 2013-04-07 19:56:27