Latest web development tutorials

classe Java ByteArrayInputStream

flux d'entrée de tableau d'octets en mémoire pour créer un flux d'entrée de tableau d'octets de mémoire tampon pour lire les données à partir d'un tableau d'octets stockés dans la mémoire tampon. Créer un flux d'entrée de tableau d'octets des objets Il existe plusieurs façons.

Recevoir tableau d'octets en tant que paramètre pour créer:

ByteArrayInputStream bArray = new ByteArrayInputStream(byte [] a);

Une autre façon de créer est de recevoir un tableau d'octets, et deux variable entière off, len, représente au large de la première lecture de l'octet, len indique la longueur d'octets lus.

ByteArrayInputStream bArray = new ByteArrayInputStream(byte []a, 
                                                       int off, 
                                                       int len)

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

Non. Méthode description
1 public int read ()
Ce courant d'entrée pour lire l'octet de données suivant.
2 public int read (byte [] r , int off, int len)
Les plus len octets de données de ce flux d'entrée dans un tableau d'octets.
3 public int disponible ()
Les retours ne peuvent bloquer cette entrée, le nombre d'octets lus à partir du flux.
4 public void marque (int lire)
Réglez le courant à la position actuelle du marqueur.
5 à long saut publique (long n)
A partir de ce flux d'entrée pour sauter n octets d'entrée.

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;

      ByteArrayInputStream bInput = new ByteArrayInputStream(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