Почему только 1 исходный файл Java может записать в тот же файл?
В моем StockTransaction.java это запускается первым
try{
FileOutputStream fos = new FileOutputStream("C:"+File.separatorChar+"transactions.dat");
OutputStreamWriter osw = new OutputStreamWriter(fos);
BufferedWriter writer = new BufferedWriter(osw);
writer.append(aStockTransaction.toString());
writer.append("******This Transaction ends Here.*****");
writer.flush();
writer.close();}
Затем в моем брокерском аккаунте
try {
FileOutputStream fos = new FileOutputStream("C:"+File.separatorChar+"transactions.dat");
OutputStreamWriter osw = new OutputStreamWriter(fos);
BufferedWriter writer = new BufferedWriter(osw);
writer.append(brokerageAcc1.toString());
writer.append("******This is end of File*****");
writer.flush();
writer.close();
//System.out.println(brokerageAcc1.toString());
}
Я протестировал с System.out.println для консоли, вывод в порядке. Но в конечном файле отображается только brokerAcc1.toString(), ничего для aStockTransaction.toString(). Зачем? Как это решить? Заранее спасибо!
1 ответ
Решение
Вам нужно использовать FileOutputStream(filename, true)
для того, чтобы добавить к существующему файлу.