Latest web development tutorials

classe Java ByteArrayOutputStream

flux de sortie de tableau d'octets en mémoire pour créer un tableau d'octets de mémoire tampon, toutes les données envoyées dans le flux de sortie est stocké dans la mémoire tampon de tableau d'octets. Créer un flux de sortie de tableau d'octets des objets Il existe plusieurs façons.

Le constructeur suivant crée un tampon de 32 octets (taille par défaut).

OutputStream bOut = new ByteArrayOutputStream();

Un autre constructeur crée un tampon de taille n octets.

OutputStream bOut = new ByteArrayOutputStream(int a)

Une fois l'objet de flux de sortie de tableau d'octets est créé avec succès, vous pouvez voir la liste suivante des méthodes, convection écriture ou d'autres opérations.

Non. Méthode description
1 public void reset ()
Ce tableau d'octets flux de sortie count est remis à champ nul, rejetant ainsi le flux de sortie toutes les données actuellement accumulées sortie.
2 public byte [] toByteArray ()
Crée un tableau d'octets nouvellement allouée. Taille de la matrice et la taille du courant de sortie de courant, dont le contenu est une copie du flux de sortie de courant.
3 public String toString ()
contenu dans une chaîne de la mémoire tampon, selon le codage de caractères par défaut de la plate-forme octets en caractères.
4 écriture public void (int w)
L'octet spécifié à ce flux de sortie de tableau d'octets.
5 public void write (byte [] b , int de, int len)
Le tableau d'octets à partir de décalage off commençant len octets écrits dans ce flux de sortie de tableau d'octets.
6 WriteTo public void (OutputStream Encours)
Tous les contenus de ce flux de sortie de tableau d'octets à l'argument de flux de sortie spécifié.

Exemples

L'exemple suivant illustre l'utilisation de ByteArrayInputStream et 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(); 
      }
   }
}

Les exemples ci-dessus les résultats compilés sont les suivants:

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