2014-09-13 60 views
-3

是什麼System.err的VS的System.out

System.out.println("Programming"); 

System.err.println("Programming"); 

之間的區別時都erroutPrintstream類的對象?

+0

爲什麼這兩個流存在你可以閱讀關於粗壯和標準錯誤作爲背景 - 見http://en.wikipedia.org/wiki/Standard_streams或其他類似的來源... – mschenk74 2014-09-13 09:41:38

回答

0

您可以通過控制檯過濾t錯誤消息和正常消息。當你有幾千人被稀釋時,這很有用。

3

這些是不同的data streams。一種是所謂的標準輸出流(STDOUT),另一種是標準錯誤流(STDERR)。

1

是的,你是默認的權利都流在控制檯刷新輸出,但你可以重新分配這兩個流到不同的渠道。像 -

System.setOut(new FileInputStream("outputfile.txt")); 
System.setErr(new FileInputStream("errfile.txt")); 

,並嘗試這個 -

try{ 
    System.out.println("Try"); 
    int i =1/0; 
}catch(Exception ex){ 
    System.err.println(ex); 
}