📌  相关文章
📜  Java中的 ByteArrayOutputStream reset() 方法及示例

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

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

Java中ByteArrayOutputStream类的reset()方法用于重置 ByteArrayOutputStream 并使该 ByteArrayOutputStream 的 count 字段为零。因此,此 ByteArrayOutputStream 中所有当前累积的输出都将被丢弃。通过重用已分配的缓冲区空间,可以再次使用此 ByteArrayOutputStream。

句法:

public void reset()

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

返回值:此方法不返回任何值。

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

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

方案一:

// Java program to illustrate
// ByteArrayOutputStream reset() method
  
import java.io.*;
  
public class GFG {
    public static void main(String[] args)
        throws Exception
    {
  
        // Create byteArrayOutputStream
        ByteArrayOutputStream byteArrayOutStr
            = new ByteArrayOutputStream();
  
        // Create two byte arrays
        byte[] buf1 = { 65, 66, 67, 68, 69 };
        byte[] buf2 = { 71, 69, 69, 75, 83 };
  
        // Write first byte array
        // to byteArrayOutputStream
        byteArrayOutStr.write(buf1);
  
        // Print the byteArrayOutputStream
        // as String
        System.out.println(
            byteArrayOutStr.toString());
  
        // reset() is called
        byteArrayOutStr.reset();
  
        // Write second byte array
        // to byteArrayOutputStream
        byteArrayOutStr.write(buf2);
  
        // Print the byteArrayOutputStream
        // as String
        System.out.println(
            byteArrayOutStr.toString());
    }
}
输出:
ABCDE
GEEKS

方案二:

// Java program to illustrate
// ByteArrayOutputStream reset() method
  
import java.io.*;
  
public class GFG {
    public static void main(String[] args)
        throws Exception
    {
  
        // Create byteArrayOutputStream
        ByteArrayOutputStream byteArrayOutStr
            = new ByteArrayOutputStream();
  
        // Create two byte arrays
        byte[] buf1 = { 71, 69, 69, 75, 83 };
        byte[] buf2 = { 70, 79, 82 };
  
        // Write first byte array
        // to byteArrayOutputStream
        byteArrayOutStr.write(buf1);
  
        // Print the byteArrayOutputStream
        // as String
        System.out.println(
            byteArrayOutStr.toString());
  
        // reset() is called
        byteArrayOutStr.reset();
  
        // Write second byte array
        // to byteArrayOutputStream
        byteArrayOutStr.write(buf2);
  
        // Print the byteArrayOutputStream
        // as String
        System.out.println(
            byteArrayOutStr.toString());
  
        // reset() is called
        byteArrayOutStr.reset();
  
        // Write first byte array
        // to byteArrayOutputStream
        byteArrayOutStr.write(buf1);
  
        // Print the byteArrayOutputStream
        // as String
        System.out.println(
            byteArrayOutStr.toString());
    }
}
输出:
GEEKS
FOR
GEEKS

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