Latest web development tutorials

clase Java ByteArrayOutputStream

flujo de salida matriz de bytes en la memoria para crear una matriz de bytes buffer, todos los datos enviados a la corriente de salida se almacena en el tampón de matriz de bytes. Crear un flujo de bytes de salida del conjunto de objetos Existen varias formas.

El siguiente constructor crea un búfer de 32 bytes (tamaño por defecto).

OutputStream bOut = new ByteArrayOutputStream();

Otro constructor crea un buffer de tamaño n bytes.

OutputStream bOut = new ByteArrayOutputStream(int a)

Después de que el objeto de flujo de salida de la matriz de bytes se crea correctamente, se puede ver la siguiente lista de métodos, la convección de escritura u otras operaciones.

No. Descripción del método
1 reinicio public void ()
Esta matriz de bytes flujo de salida de count se restablece a campo cero, descartando así el flujo de salida de todos los datos que actualmente acumulan salida.
2 public byte [] toByteArray ()
Crea una matriz de bytes recién asignado. Tamaño de la matriz y el tamaño de la corriente de salida de corriente, el contenido es una copia de la corriente de salida de corriente.
3 public String toString ()
el contenido del búfer en una cadena, de acuerdo con la codificación de caracteres por defecto de la plataforma de bytes en caracteres.
4 pública de escritura void (int w)
El byte especificado a este flujo de salida de la matriz de bytes.
5 public void write (byte [] b , int de, int len)
La matriz de bytes especificada comenzando en el desplazamiento off a partir len bytes escritos en esta corriente de salida de la matriz de bytes.
6 pública writeTo vacío (OutputStream outst)
Todos los contenidos de esta corriente de salida de matriz de bytes en el argumento flujo de salida especificada.

Ejemplos

El siguiente ejemplo muestra el uso de ByteArrayInputStream y ByteArrayOutputStream:

import java.io.*;
public class ByteStreamTest {
   public static void main(String args[])throws IOException {
      ByteArrayOutputStream bOutput = new ByteArrayOutputStream(12);
      while( bOutput.size()!= 10 ) {
         // 获取用户输入
         bOutput.write(System.in.read()); 
      }
      byte b [] = bOutput.toByteArray();
      System.out.println("Print the content");
      for(int x= 0 ; x < b.length; x++) {
         // 打印字符
         System.out.print((char)b[x]  + "   "); 
      }
      System.out.println("   ");
      int c;
      ByteArrayOutputStream bInput = new ByteArrayOutputStream(b);
      System.out.println("Converting characters to Upper case " );
      for(int y = 0 ; y < 1; y++ ) {
         while(( c= bInput.read())!= -1) {
            System.out.println(Character.toUpperCase((char)c));
         }
         bInput.reset(); 
      }
   }
}

Los ejemplos anteriores resultados compilados son los siguientes:

asdfghjkly
Print the content
a   s   d   f   g   h   j   k   l   y
Converting characters to Upper case
A
S
D
F
G
H
J
K
L
Y