У меня проблема с чтением и записью arraylist в текстовый файл. В частности, с чтением. То, что я пытаюсь сделать, читается из текстового файла и переносит его в список массивов. После чего я отредактирую список и верну его обратно в текстовый файл. Я думаю, что я иду писать, но не чтение. Я пробовал читать несколько подобных вопросов, но can not, кажется, вводит это в мой код.Чтение и запись arraylist в текстовый файл
Чтение кода
public void read(List<AddressBook> addToList){
BufferedReader br = null;
try {
String currentLine= "";
br = new BufferedReader(new FileReader("bank_account.csv"));//file na gusto mo basahin
while ((currentLine = br.readLine()) != null) {
System.out.println(currentLine); // print per line
for (AddressBook read : addToList) {
br.read(read.getName() + read.getAddress() + read.getTelNum() + read.getEmailAdd());
addToList.add(read);
} }
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null)
{
br.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
Вот что я сделал с записью
public void write(List<AddressBook> addToList) {
try {
File file = new File("bank_account.csv"); //file
// if file doesnt exists, then create it
if (!file.exists()) {
file.createNewFile();
}
//FileWriter fw = new FileWriter(file.getAbsoluteFile());
FileWriter fw = new FileWriter(file.getAbsoluteFile(), true);
BufferedWriter bw = new BufferedWriter(fw);
for (AddressBook write : addToList) {
bw.write(write.getName() + "," + write.getAddress() + "," + write.getTelNum() + "," + write.getEmailAdd());
bw.newLine();
}
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
Итак, в чем ваш вопрос? Какая у вас проблема/ошибка? – forgivenson
Не связано с вашей проблемой, но вы действительно должны использовать [try-with-resources] (http://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html). Это очистит много вашего кода try/catch/finally. – wolfcastle