Java.io.ByteArrayInputStream.available() Method


Advertisements


Description

The java.io.ByteArrayInputStream.available() method returns the number of bytes left to be read from this input stream.

Declaration

Following is the declaration for java.io.ByteArrayInputStream.available() method −

public int available()

Parameters

NA

Return Value

The value returns the count of bytes to be read from the input stream.

Exception

NA

Example

The following example shows the usage of java.io.ByteArrayInputStream.available() method.

package com.tutorialspoint;

import java.io.ByteArrayInputStream;
import java.io.IOException;

public class ByteArrayInputStreamDemo {
   
   public static void main(String[] args) throws IOException {
      byte[] buf = {65, 66, 67, 68, 69};
      ByteArrayInputStream bais = null;
      
      try {
      
         // create new byte array input stream
         bais = new ByteArrayInputStream(buf);
         
         int count =0;
         
         // read till the end of the stream
         while((count = bais.available())>0) {
            
            // convert byte to character
            char c = (char)bais.read();
            
            // print number of bytes available
            System.out.print("available byte(s) : "+ count);
            
            // print characters read form the byte array
            System.out.println(" & byte read : "+c);
         }
         
      } catch(Exception e) {
      
         // if I/O error occurs
         e.printStackTrace();
      } finally {
         if(bais!=null)
            bais.close();
      }
   }
}

Let us compile and run the above program, this will produce the following result −

available byte(s) : 5 & byte read : A
available byte(s) : 4 & byte read : B
available byte(s) : 3 & byte read : C
available byte(s) : 2 & byte read : D
available byte(s) : 1 & byte read : E

java_io_bytearrayinputstream.htm

Advertisements