Latest web development tutorials

Класс Java ByteArrayOutputStream

выходной поток массив байтов в памяти, чтобы создать массив буфера байтов, все данные, передаваемые в выходной поток сохраняется в буфере массива байтов. Создать байт выходной массив объектов потока Есть несколько способов.

Следующий конструктор создает буфер 32 байта (размер по умолчанию).

OutputStream bOut = new ByteArrayOutputStream();

Другой конструктор создает буфер размером п байт.

OutputStream bOut = new ByteArrayOutputStream(int a)

После того, как массив байтов объект выходной поток успешно создан, вы можете увидеть следующий список методов, конвекция записи или других операций.

Нет. Метод Описание
1 общественного недействительными сброса ()
Этот массив байт выходной поток count сбрасывается на нулевом поле, тем самым отбрасывая выходной поток всех данных в настоящее время накопленный вывод.
2 общественный байт [] toByteArray ()
Создает недавно выделенный массив байтов. Размер массива и размер текущего потока вывода, содержимое представляет собой копию текущего потока вывода.
3 общественного Строка ToString ()
содержимого буфера в строку, в соответствии с кодировкой символов по умолчанию платформы байты в символы.
4 общественного недействительными записи (Int W)
Указанный байт в этот выходной поток байтов массива.
5 общественного недействительными записи (байт [] б , INT из, Int LEN)
Указанный массив байтов , начиная со смещения off начинающих len байтов , записанных в этом выходной массив поток байтов.
6 общественного недействительными WriteTo (OutputStream outSt)
Все содержимое этого выходной поток массив байтов в указанный выходной поток аргумента.

примеров

Следующий пример демонстрирует использование ByteArrayInputStream и 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(); 
      }
   }
}

Приведенные выше примеры скомпилированные получены следующие результаты:

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