Java程式用於關閉此輸入流並釋放與該流關聯的任何系統資源


這篇關於Java的文章討論了InputStream.close()函式,用於關閉輸入流並釋放系統資源。方法java.io.InputStream.close()用於關閉此輸入流並釋放與該流關聯的任何系統資源。此方法不需要引數,也不返回任何值。此外,當發生I/O錯誤時,會丟擲IOException

問題陳述

給定一個輸入流,編寫一個Java程式來關閉此輸入流並釋放與之關聯的任何系統資源。確保程式處理可能發生的任何異常,例如流已關閉或遇到I/O錯誤。
輸入
An input stream that reads a file located at C://JavaProgram//data.txt.
輸出
The number of bytes are: 4
Error!!! The input stream is closed

關閉輸入流並釋放系統資源的步驟

以下是關閉輸入流並釋放系統資源的步驟:

  • java.io包匯入必要的類(FileInputStream和InputStream)。
  • 建立一個InputStream物件,並使用FileInputStream讀取檔案。
  • 使用available()方法檢索可用的位元組數,以檢查流的當前狀態。
  • 使用close()方法關閉輸入流以釋放資源。
  • 關閉輸入流後嘗試再次訪問它,並處理任何發生的異常,例如IOException

Java程式用於關閉InputStream並釋放資源

以下是關閉InputStream並釋放資源的示例:

import java.io.FileInputStream;
import java.io.InputStream;
public class Demo {
   public static void main(String[] args) throws Exception {
      InputStream i = null;
      int num = 0;
      try {
         i = new FileInputStream("C://JavaProgram//data.txt");
         num = i.available();
         System.out.println("The number of bytes are: " + num);
         i.close();
         num = i.available();
         System.out.println("The number of bytes are: " + num);
      } catch(Exception e) {
         System.out.print("Error!!! The input stream is closed");
      }
   }
}

輸出

The number of bytes are: 4
Error!!! The input stream is closed

程式碼解釋

使用FileInputStream建立一個輸入流,用available()檢查可以讀取的位元組數並顯示輸出。當使用close()關閉流並嘗試讀取流時,會發生異常,因為流已關閉。該異常被處理,並顯示訊息“錯誤!!!輸入流已關閉”作為錯誤處理的一部分。

更新於:2024年11月11日

160 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.