📜  Java.io.ByteArrayOutputStream类(1)

📅  最后修改于: 2023-12-03 15:31:34.746000             🧑  作者: Mango

Java.io.ByteArrayOutputStream类介绍

Java.io.ByteArrayOutputStream类是一个输出流,它将数据写入一个内存缓冲区。当缓冲区满时,其内容可以被转换为字节数组。它继承自OutputStream类并提供了许多方法来简化写入数据。

构造方法
public ByteArrayOutputStream()
public ByteArrayOutputStream(int size)
  • public ByteArrayOutputStream():创建一个新的ByteArrayOutputStream,初始大小为32字节。
  • public ByteArrayOutputStream(int size):创建一个具有指定大小的新的ByteArrayOutputStream。如果缓冲区已满,则自动增加大小。
常用方法
public void write(int b)
public synchronized void write(byte[] b, int off, int len)
public synchronized void writeTo(OutputStream out) throws IOException
public synchronized void reset()
public byte[] toByteArray()
public synchronized int size()
public synchronized String toString()
  • public void write(int b):将指定的字节写入此ByteArrayOutputStream。
  • public synchronized void write(byte[] b, int off, int len):将指定字节数组的一部分写入此ByteArrayOutputStream。
  • public synchronized void writeTo(OutputStream out):将此ByteArrayOutputStream的内容写入一个OutputStream。
  • public synchronized void reset():重置此ByteArrayOutputStream以接收新的数据。
  • public byte[] toByteArray():创建一个新分配的字节数组,其大小是此ByteArrayOutputStream的当前大小,并将缓冲区的当前内容复制到该数组中。
  • public synchronized int size():返回此ByteArrayOutputStream的当前大小。
  • public synchronized String toString():将ByteArrayOutputStream转换成一个字符串。
使用示例
import java.io.ByteArrayOutputStream;
import java.io.IOException;

public class ByteArrayOutputStreamDemo {
    public static void main(String[] args) throws IOException {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        baos.write(65);
        baos.write(66);
        baos.write(67);
        byte[] byteArray = baos.toByteArray();
        for (byte b : byteArray) {
            System.out.print((char) b);
        }
    }
}

输出结果为:ABC

以上代码演示了如何从ByteArrayOutputStream读取写入的数据并将其转换为字节数组。