java.io.BufferedInputStream.close() 方法關閉緩衝輸入流並釋放與該流關聯的所有系統資源。關閉流之後,則read(), available(), skip(), 或 reset() 呼叫將丟擲I/O異常。
在關閉流之前呼叫close沒有任何影響。
以下是java.io.BufferedInputStream.close()方法的宣告
public void close()
NA
此方法不返回任何值。
IOException -- -- 如果發生I/O錯誤。
下面的範例演示java.io.BufferedInputStream.close()方法的用法。
package com.yiibai; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; public class BufferedInputStreamDemo { public static void main(String[] args) throws Exception { InputStream inStream = null; BufferedInputStream bis = null; try{ // open input stream test.txt for reading purpose. inStream = new FileInputStream("c:/test.txt"); // input stream is converted to buffered input stream bis = new BufferedInputStream(inStream); // invoke available int byteNum = bis.available(); // number of bytes available is printed System.out.println(byteNum); // releases any system resources associated with the stream bis.close(); // throws io exception on available() invocation byteNum = bis.available(); System.out.println(byteNum); } catch (IOException e) { // exception occurred. System.out.println("Error: Sorry 'bis' is closed"); }finally{ // releases any system resources associated with the stream if(inStream!=null) inStream.close(); } } }
假設有一個文字檔案c:/ test.txt,它具有以下內容。該檔案將被用作輸入在範例程式:
ABCDE
編譯和執行上面的程式,這將產生以下結果:
5 Error: Sorry 'bis' is closed