📜  Java中的 ByteArrayOutputStream toByteArray() 方法及示例

📅  最后修改于: 2022-05-13 01:55:45.990000             🧑  作者: Mango

Java中的 ByteArrayOutputStream toByteArray() 方法及示例

Java中ByteArrayOutputStream类的toByteArray()方法用于创建一个新分配的字节数组。新分配的字节数组的大小等于这个输出流的当前大小。此方法将缓冲区的有效内容复制到其中。

句法:

public byte[] toByteArray()

参数:此方法不接受任何参数。

返回值:该方法返回新分配的字节数组,其中包含该输出流的有效内容。

异常:此方法不会抛出任何异常。

下面的程序说明了 IO 包中 ByteArrayOutputStream 类中的 toByteArray() 方法:

方案一:

// Java program to illustrate
// ByteArrayOutputStream toByteArray() method
  
import java.io.*;
  
public class GFG {
    public static void main(String[] args)
        throws Exception
    {
  
        // Create byteArrayOutputStream
        ByteArrayOutputStream byteArrayOutStr
            = new ByteArrayOutputStream();
  
        // Create byte array
        byte[] buf = { 71, 69, 69, 75, 83 };
  
        // Write byte array
        // to byteArrayOutputStream
        byteArrayOutStr.write(buf);
  
        for (byte b : byteArrayOutStr
                          .toByteArray()) {
  
            // Print the byte
            System.out.println((char)b);
        }
    }
}
输出:
G
E
E
K
S

方案二:

// Java program to illustrate
// ByteArrayOutputStream toByteArray() method
  
import java.io.*;
  
public class GFG {
    public static void main(String[] args)
        throws Exception
    {
  
        // Create byteArrayOutputStream
        ByteArrayOutputStream byteArrayOutStr
            = new ByteArrayOutputStream();
  
        // Create byte array
        byte[] buf = { 71, 69, 69, 75, 83,
                       70, 79, 82, 71, 69,
                       69, 75, 83 };
  
        // Write byte array
        // to byteArrayOutputStream
        byteArrayOutStr.write(buf);
  
        for (byte b : byteArrayOutStr
                          .toByteArray()) {
  
            // Print the byte
            System.out.println((char)b);
        }
    }
}
输出:
G
E
E
K
S
F
O
R
G
E
E
K
S

参考:
https://docs.oracle.com/javase/10/docs/api/java Java()