importjava.io.ByteArrayOutputStream;importjava.io.OutputStream;publicclassOutputStreamToByteArray{publicstaticvoidmain(String[]args){ByteArrayOutputStreambyteArrayOutputStream=newByteArrayOutputStream();Stringdata="Hello, ByteArrayOutputStream!";try{byteArrayOutputStream.write(data.getBytes());// 将输出流...
使用ByteArrayOutputStream,因为它可以将写入的数据存储在一个内部的字节数组中。 将数据写入OutputStream: 使用write方法将需要转换的数据写入ByteArrayOutputStream。 调用OutputStream的toByteArray()方法获取byte数组: 一旦数据写入完成,调用ByteArrayOutputStream的toByteArray()方法即可获取包含所有写入数据的字节数组。
importjava.io.ByteArrayOutputStream;importjava.io.IOException;publicclassOutputStreamToByteExample{publicstaticvoidmain(String[]args){// 创建ByteArrayOutputStream实例ByteArrayOutputStreambyteArrayOutputStream=newByteArrayOutputStream();try{// 将字符串数据写入输出流Stringdata="Hello, World!";byteArrayOutput...
System.arraycopy(b, off, buf, count, len); count += len; } 3)writeTo(OutputStream out):将此字节输出流的内容写入到指定的输出流中 /** * 将此字节输出流的内容写入到指定的输出流中 */ public synchronized void writeTo(OutputStream out) throws IOException { out.write(buf, 0, count); } ...
ByteArrayOutputStream 是字节数组输出流。它继承于OutputStream。 ByteArrayOutputStream 中的数据被写入一个 byte 数组。缓冲区会随着数据的不断写入而自动增长。可使用 toByteArray() 和 toString() 获取数据。 OutputStream 函数列表 我们来看看ByteArrayOutputStream的父类OutputStream的函数接口。
String charsetName="UTF-8";// 指定字符集名称,例如 UTF-8ByteArrayOutputStream baos=newByteArrayOutputStream();baos.write(data);// 假设 data 是要写入 ByteArrayOutputStream 的数据byte[]bytes=baos.toByteArray();String result=newString(bytes,charsetName);baos.close(); ...
正如@seh 正确注意到的那样, ByteArrayOutputStream.toByteArray() 返回支持对象的 副本 byte[] 对象,这可能效率低下。但是,支持 byte[] 对象以及字节数都是 ByteArrayOutputStream 类的受保护成员。因此,您可以创建自己的 ByteArrayOutputStream 变体,直接公开它们: public class MyByteArrayOutputStream extends Byt...
如果提供的 OutputStream 对象还不是 ByteArrayOutputStream ,可以 wrap 它在委托类中,提供给 write() 字节--- 方法,例如 public class DrainableOutputStream extends FilterOutputStream { private final ByteArrayOutputStream buffer; public DrainableOutputStream(OutputStream out) { super(out); this.buffer = ...
ByteArrayOutputStream类实例时,内存中会创建一个byte数组类型的缓冲区,缓冲区会随着数据的不断写入而自动增长。 可使用toByteArray()和toString()获取数据。关闭ByteArrayOutputStream无效,此类中的方法在关闭此流后仍可被调用,而不会产生任何IOException 在网络传输中我们往往要传输很多变量,我们可以利用ByteArrayOutput...
BYTEARRAYOUTPUTSTREAM { +write(byte[]) +toByteArray() } ByteArrayOutputStream --|> OutputStream: "extends" 4. 旅行示例 (Journey图) 我们也可以通过旅行图来形象化数据流动的过程: ByteArrayOutputStreamOutputStreamUser Data Writing Write to OutputStream ...