📅  最后修改于: 2023-12-03 15:16:20.965000             🧑  作者: Mango
在Java中,ByteArrayOutputStream类用于将数据写入内存中的字节数组缓冲区。它提供了toByteArray()方法,该方法将缓冲区中的数据转换为字节数组。
public byte[] toByteArray()
该方法返回缓冲区的当前内容作为字节数组。如果缓冲区已关闭,则返回一个空数组。否则返回的数组具有新分配的存储器,并将该数组的长度是缓冲区的当前大小。
下面是一个简单的示例,演示了如何使用ByteArrayOutputStream和toByteArray()方法将字符串“Hello World!”转换为字节数组。
import java.io.ByteArrayOutputStream;
import java.io.IOException;
public class ByteArrayOutputStreamExample {
public static void main(String[] args) {
String message = "Hello, World!";
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
try {
outputStream.write(message.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
byte[] byteArray = outputStream.toByteArray();
System.out.println("Original message: " + message);
System.out.println("Byte array: ");
for (byte b : byteArray) {
System.out.print(b + " ");
}
}
}
输出结果:
Original message: Hello, World!
Byte array:
72 101 108 108 111 44 32 87 111 114 108 100 33
在这个示例中,我们首先创建了一个ByteArrayOutputStream对象。然后,我们将“Hello, World!”字符串写入该对象中。最后,我们调用toByteArray()方法将缓冲区中的数据转换为字节数组,并将其打印到控制台上。
这个示例演示了如何如何将字符串转换为字节数组,并提示开发者如何使用Java中的ByteArrayOutputStream类和toByteArray()方法来实现此目标。
希望本文对你有所帮助!