首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java 標準 IO 重導向機制

     編輯:Java 相關知識

Java 1.1 在 System 類別新增靜態方法重導向標準輸入/輸出/錯誤流:

  • setIn(InputStream)
  • setOut(PrintStream)
  • setErr(PrintStream)

應用場景

  • 大量螢幕輸出重導向至檔案供事後分析
  • 命令列程式測試固定輸入序列

範例:將標準輸入導向檔案,輸出/錯誤導向另一檔案

BufferedInputStream in = new BufferedInputStream(
    new FileInputStream("Redirecting.java"));
PrintStream out = new PrintStream(
    new BufferedOutputStream(new FileOutputStream("test.out")));
System.setIn(in);
System.setOut(out);
System.setErr(out);

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s;
while ((s = br.readLine()) != null) System.out.println(s);
out.close();

棄用警告說明

編譯時會收到 PrintStream(OutputStream) 建構子棄用警告。但 System.setOut/Err() 參數類型為 PrintStream,故仍需使用。這反映 Java 1.1 設計上的一致性問題:PrintWriter 為新推薦替代品,但系統方法仍要求舊類別。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved