系統學習 Java IO (十六)----這麽多類,應該用哪個?
阿新 • • 發佈:2018-11-25
寫作 tin nts .com puts tab cto ces 類型
目錄:系統學習 Java IO---- 目錄,概覽
### Java IO目的和功能
Java IO 包含 InputStream,OutputStream,Reader 和 Writer 類的許多子類。 原因是,所有這些子類都在解決各種不同的目的。 所涉及的目的總結如下:
- 網絡訪問
- 內部緩沖區訪問
- 線程間通信(管道)
- 緩沖
- 過濾
- 解析
- 閱讀和寫作文本(Reader/Writer)
- 讀寫原始數據(long,int等)
- 讀和寫對象
Java IO類概述表
在討論了 Java IO 類所針對的源,目標,輸入,輸出和各種 IO 目的之後,這裏列出了大多數(不是全部)Java IO 類除以輸入,輸出,基於字節或基於字符的任何目的,以及任何他們可能正在解決的更具體的目的,如緩沖,解析等。
數據類型 | 基於字節的 Input | 基於字節的 Output | 基於字符的 Input | 基於字符的 Output |
---|---|---|---|---|
基礎 | InputStream | OutputStream | Reader 、 InputStreamReader | Writer、OutputStreamWriter |
數組 | ByteArrayInputStream | ByteArrayOutputStream | CharArrayReader | CharArrayWriter |
Files | FileInputStream、RandomAccessFile | FileOutputStream、RandomAccessFile | FileReader | FileWriter |
管道 | PipedInputStream | PipedOutputStream | PipedReader | PipedWriter |
緩沖 | BufferedInputStream | BufferedOutputStream | BufferedReader | BufferedWriter |
過濾 | FilterInputStream | FilterOutputStream | FilterReader | FilterWriter |
解析 | PushbackInputStream、StreamTokenizer | PushbackReader、LineNumberReader | ||
字符串 | StringReader | StringWriter | ||
數據 | DataInputStream | DataOutputStream | ||
數據 - 格式化 | PrintStream | PrintWriter | ||
對象 | ObjectInputStream | ObjectOutputStream | ||
組合多個流 | SequenceInputStream |
根據需要處理的數據從上表選擇,可以參考別人是怎麽用的。
系統學習 Java IO (十六)----這麽多類,應該用哪個?