Почему только 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) для того, чтобы добавить к существующему файлу.

Другие вопросы по тегам