2012-11-28 30 views
0

有沒有辦法寫入輸出流,將由System.in輸入流讀取?例如:寫輸出將由System.in讀取,java

BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(System.in)); 

除了不起作用,因爲System.in是一個輸入流和OutputStreamWriter需要的OutputStream。

我想輸出的東西,將通過讀取:

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); 

我所試圖做的是寫一個控制檯應用程序單元測試。我想以編程方式測試我的輸入。任何方式來做到這一點將回答我的問題。

回答

2

我的建議是你用method(String/int var)創建方法並且有一個單獨的分析器。然後,您可以測試所有方法,而無需輸入。這是單元測試的標準。

1

你可以寫和讀標準輸入/輸出,但我會重構代碼以分離出如何你用它做什麼讓您的輸入。

這樣你就可以直接從單元測試中調用「執行」代碼。

它還允許其他輸入源輕鬆插入代碼中,例如文件內容,網頁內容等。