私の問題は、csvファイルをいっぱいにすることですが、コードを実行してcsvを空にしてから新しいデータを書き込むたびに必要です。
このメソッドは、コードを実行するたびに FOR ループで本体から呼び出されます...
public static void csv_output() throws Exception {
FileWriter fw = new FileWriter("output/out.csv", true);
//true refers to append
PrintWriter pw = new PrintWriter(fw, false);
//pw.flush();
//clears the Buffer
if (Auctionhouse.current_epoch == 1) {
pw.print("Epoch");
pw.print(",");
for (int j = 0; j < Run_process.total_Agents; j++) {
pw.print(Chromosome.chromosome.get(j).ID + "_Balance");
pw.print(",");
}
for (int k = 0; k < Stockhouse.total_stocks; k++) {
pw.print(Stockhouse.stockP.get(k).stock_Id);
pw.print(",");
}
}
pw.println();
pw.print(Auctionhouse.current_epoch);
pw.print(",");
for (int i = 0; i < Run_process.total_Agents; i++) {
String ag = Portfolio.Agent_balance.get(i) + "";
pw.print(ag);
pw.print(",");
}
for (int j = 0; j < Stockhouse.total_stocks; j++) {
String pr = Auctionhouse.total_prices.get(Auctionhouse.current_epoch - 1).get(j) + "";
pw.print(pr);
pw.print(",");
}
}
pw.flush();
pw.close();
fw.close();
フラッシュが機能しません。
PS: すべてのループでデータを書き込めるように追加したいと思います。