Java Bufferedinputstream Class

The Java BufferedInputStream class is utilized for reading data from a stream efficiently by employing a buffer mechanism to enhance performance.

Key aspects of BufferedInputStream include:

  • The internal buffer is replenished from the underlying input stream in batches when bytes are read or skipped.
  • Upon instantiation of a BufferedInputStream, an internal buffer array is established.
  • Java BufferedInputStream class declaration

Let's examine the declaration of the Java.io.BufferedInputStream class:

Example

public class BufferedInputStream extends FilterInputStream

Java BufferedInputStream class constructors

Constructor Description
BufferedInputStream(InputStream IS) It creates the BufferedInputStream and saves it argument, the input stream IS, for later use.
BufferedInputStream(InputStream IS, int size) It creates the BufferedInputStream with a specified buffer size and saves it argument, the input stream IS, for later use.

Java BufferedInputStream class methods

Method Description
int available() It returns an estimate number of bytes that can be read from the input stream without blocking by the next invocation method for the input stream.
int read() It read the next byte of data from the input stream.
int read(byte[] b, int off, int ln) It read the bytes from the specified byte-input stream into a specified byte array, starting with the given offset.
void close() It closes the input stream and releases any of the system resources associated with the stream.
void reset() It repositions the stream at a position the mark method was last called on this input stream.
void mark(int readlimit) It sees the general contract of the mark method for the input stream.
long skip(long x) It skips over and discards x bytes of data from the input stream.
boolean markSupported() It tests for the input stream to support the mark and reset methods.

Example of Java BufferedInputStream

Let's explore a straightforward example for reading file data utilizing BufferedInputStream:

Example

package com.example;

 

import java.io.*;

public class BufferedInputStreamExample{  

 public static void main(String args[]){  

  try{  

    FileInputStream fin=new FileInputStream("D:\\testout.txt");  

    BufferedInputStream bin=new BufferedInputStream(fin);  

    int i;  

    while((i=bin.read())!=-1){  

     System.out.print((char)i);  

    }  

    bin.close();  

    fin.close();  

  }catch(Exception e){System.out.println(e);}  

 }  

}

In this scenario, it is assumed that the data is available in the file named "testout.txt":

Example

Java

Output:

Output

Java

Input Required

This code uses input(). Please provide values below: