如何將java輸出打印到shell控制檯並同時在某個文件中打印?那可能嗎?將java輸出打印到文件
回答
你可以在你的程序開始包括以下行:
final PrintStream origout = System.out;
final PrintStream fileout = new PrintStream(file);
System.setOut(new PrintStream(new OutputStream() {
@Override
public void write(int b) throws IOException {
origout.write(b);
fileout.write(b);
}
}));
我把這個放在我的主要方法的開始,但我得到各種錯誤,包括未定義的構造函數等,我導入了所有適當的包。請幫助 – CodyBugstein 2013-02-03 20:22:28
我通過使用fileout替換新的OutputStream來實現它。但是,這導致我無法在控制檯中看到任何輸出,而只能在.txt文件中看到輸出。我怎樣才能輸出到兩個? – CodyBugstein 2013-02-03 20:31:31
您可以寫入控制檯。並寫入一個文件。你可以把它們分開,所以它們不依賴於彼此。
沒有一個API可以在我知道的同時執行這兩個API(不是說太多,寫一個應該是微不足道的)。
編輯:我誤解了嗎?你的意思是來自Java代碼還是隻是將java二進制文件的輸出傳送給控制檯和文件?在這種情況下,你可以這樣做:
java Main 2>&1 | tee -a Load.log
@downvoter:有什麼意見?您的反饋只能幫助我改進我的答案,或者說服我將其刪除,如果我只是明顯錯誤。 – 2011-04-17 21:07:47
這需要更多的解釋。這不僅僅是一個回答而是一個評論 – CodyBugstein 2013-02-03 20:17:23
您可以使用System.setOut()
將System.Out
重定向到自定義OutputStream
,該自定義將其輸出複製到控制檯和文件。
你能否詳細說明一下? – CodyBugstein 2013-02-03 20:15:47
最簡單的方法(因爲它不涉及真正的編程)是在Linux中使用三通命令,Mac OS X或Windows PowerShell中,像這樣:
java MyProg | tee outputfile.txt
這適用於任何編程語言,不只是Java。
- 1. 將python輸出打印到html文件
- 2. Java:將輸出打印到文本文件
- 3. 已將打印數據輸出到輸出文件
- 4. 將文件名列表的輸出打印到文本文件
- 5. 將打印輸出寫入文件(python)
- 6. 打印apsrtable輸出到文件?
- 7. 使用Python打印輸出到文件
- 8. 打印php腳本輸出到文件
- 9. 將Java對象打印到Javascript文件
- 10. 將輸出打印到Linux中的文本文件中
- 11. 如何將unicode文本打印到輸出文件?
- 12. 不打印到文件java
- 13. 將文件打印到java中的特定打印機
- 14. Mapper輸出直接打印到輸出文件
- 15. 將存儲數據庫輸出打印到文件
- 16. Python 3:如何將輸出打印到控制檯和文件
- 17. 使用MMAP將輸出打印到文件
- 18. 如何將Django的runserver輸出打印到文件中?
- 19. 將derefrenced變量的輸出打印到文件中
- 20. 如何將打印(i/j)保存到輸出文件?
- 21. Golang:查找將輸出打印到標準輸出的文件名和行號
- 22. Java打印 - 在少量打印機上放大打印輸出
- 23. 如何在java中的文本文件中打印此輸出?
- 24. 輸出到打印機Powershell
- 25. 文件陣列輸出打印
- 26. 輸出打印
- 27. 打印輸出
- 28. 打印輸出
- 29. Python - 讀取Excel文件並將輸出打印到另一個文件
- 30. 打印到命令行中給出的輸出文件
大多數日誌工具支持這種事情。例如,使用Log4J添加ConsoleAppender和FileAppender將執行此操作。有人提到SLF4J--這是真的,儘管它只是一個門面。據我所知,你仍然需要配置它將在幕後使用的日誌工具。 – Nick 2011-04-17 18:12:10