1. 程式人生 > >系統學習 Java IO (十六)----這麽多類,應該用哪個?

系統學習 Java IO (十六)----這麽多類,應該用哪個?

寫作 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 (十六)----這麽多類,應該用哪個?