Java - ByteArrayOutputStream close() 方法



描述

呼叫Java ByteArrayOutputStream close() 方法沒有任何效果。在呼叫 close() 方法之後,可以繼續呼叫此類中的方法,而不會產生 I/O 錯誤。

宣告

以下是java.io.ByteArrayOutputStream.close() 方法的宣告:

public void close()

引數

返回值

該方法不返回任何值。

異常

示例 1

以下示例演示了 Java ByteArrayOutputStream close() 方法的用法。我們建立了一個名為 buf 的 byte[] 變數,並初始化了一些位元組。我們建立了一個 ByteArrayOutputStream 引用,然後建立了一個新的 ByteArrayOutputStream() 物件。我們在呼叫 write() 方法之前使用了 close() 方法來關閉流。然後,我們使用其 write() 方法將位元組陣列寫入 ByteArrayOutputStream 物件,並列印其字串版本。

package com.tutorialspoint;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
public class ByteArrayOutputStreamDemo {
   public static void main(String[] args) throws IOException {
      byte[] buf = {65, 66, 67, 68, 69};
      ByteArrayOutputStream baos = null;
      
      try {
         // create new ByteArrayOutputStream
         baos = new ByteArrayOutputStream();
         
         // close is invoked before baos.
         baos.close();
         
         // writing byte array to the output stream
         baos.write(buf);
         
         // print as string
         System.out.print(baos.toString());
         
      } catch(Exception e) {
         // if I/O error occurs
         e.printStackTrace();
      } finally {
         if(baos!=null)
            baos.close();
      }   
   }
}

輸出

讓我們編譯並執行以上程式,這將產生以下結果:

ABCDE

示例 2

以下示例演示了 Java ByteArrayOutputStream close() 方法的用法。我們建立了一個名為 buf 的 byte[] 變數,並初始化了一些位元組。我們建立了一個 ByteArrayOutputStream 引用,然後建立了一個新的 ByteArrayOutputStream() 物件。然後,我們使用其 write() 方法將位元組陣列寫入 ByteArrayOutputStream 物件,並列印其字串版本。在 finally 程式碼塊中,我們使用 close() 方法關閉 ByteArrayOutputStream 物件。

package com.tutorialspoint;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
public class ByteArrayOutputStreamDemo {
   public static void main(String[] args) throws IOException {
      byte[] buf = {65, 66, 67, 68, 69};
      ByteArrayOutputStream baos = null;
      
      try {
         // create new ByteArrayOutputStream
         baos = new ByteArrayOutputStream();
         
         // writing byte array to the output stream
         baos.write(buf);
         
         // print as string
         System.out.print(baos.toString());
         
      } catch(Exception e) {
         // if I/O error occurs
         e.printStackTrace();
      } finally {
         if(baos!=null)
            baos.close();
      }   
   }
}

輸出

讓我們編譯並執行以上程式,這將產生以下結果:

ABCDE
java_bytearrayoutputstream.htm
廣告

© . All rights reserved.