我創建的java項目將被測試1800個案例,並且每個案例的輸出必須與黃金(期望)輸出匹配。我爲此創建了一個perl腳本並在cygwin上運行它。向文件寫入例外
有幾種情況會引發異常,但它們被錯誤地認爲是正確的。我想在java代碼中添加一個try catch塊,這樣如果拋出任何異常,它將被捕獲並且堆棧跟蹤將被打印在文件exception.txt
上。
Pseudo Java code:
main()
{
try
{
... //complete code of main()
}
catch (Exception e)
{
FileWriter fstream=new FileWriter("exception.txt");
BufferedWriter out=new BufferedWriter(fstream);
out.write(e.toString());
out.close();
}
}
但是這覆蓋了以前的文件內容,最後文件包含最後拋出的異常。我如何編寫catch塊以便打印stackTrace並且文件的內容是完整的並且不會每次都被覆蓋。
使用其他CONSTRU FileWriter'FileWriter(「exception.txt」,true)的ctor;' – Kayser 2012-03-29 10:40:13
您可以使用Printstream進行堆棧跟蹤。我解釋瞭如何在答案。 – Kayser 2012-03-29 10:58:52