Java中流是處理輸入輸出的一個重要機制。流分為節點流和處理流。
節點流是與某個輸入輸出源相連的流。它可以讀取或寫入數據。常見的節點流包括FileInputStream、FileOutputStream、ByteArrayInputStream、ByteArrayOutputStream等。
FileInputStream fis = new FileInputStream("input.txt"); int data = fis.read(); //讀取文件中的一個字節 fis.close();
上述代碼中的FileInputStream就是一個節點流。我們可以使用它來讀取文件中的數據。在讀取完數據以后,需要調用close方法關閉該流。
處理流是對其他流進行包裝,增強流的功能。處理流可以對數據進行緩存、壓縮、加密等操作。通常情況下,傳遞給處理流的參數都是節點流。
FileInputStream fis = new FileInputStream("input.txt"); BufferedInputStream bis = new BufferedInputStream(fis); //將節點流進行包裝,增強讀取文件的功能 int data = bis.read(); bis.close(); fis.close();
上述代碼中的BufferedInputStream就是一個處理流。它對FileInputStream進行了包裝,增強了讀取文件的功能。我們可以使用它來進行緩存,提高讀取文件的效率。