Sunday, 11 June 2017

Java Tutorial : Java IO (Java PushbackInputStream-example) ~ foundjava


Click here to watch in Youtube : 

myfile.txt
Hello world
PushbackInputStreamDemo.java
import java.io.FileInputStream;
import java.io.IOException;
import java.io.PushbackInputStream;

/*
 * public PushbackInputStream(InputStream in, int size)
 * 
 * Parameters:
 * -----------
 * 
 * in - the input stream from which bytes will be read.
 * size - the size of the pushback buffer.
 */
public class PushbackInputStreamDemo
{

    public static void main(String[] args) throws IOException
    {
        FileInputStream fileInputStream = null;
        PushbackInputStream pushbackInputStream = null;
        try
        {
            fileInputStream = new FileInputStream("myfile.txt");

            /*
             * Creates a PushbackInputStream with a pushback
             * buffer of the specified size, and saves its
             * argument, the input stream in, for later use.
             */
            pushbackInputStream = new PushbackInputStream(fileInputStream, 8);

            byte[] byteArray = new byte[10];
            
            /*
             * Reads up to len bytes of data from this input
             * stream into an array of bytes.
             */
            int numberOfBytesRead = pushbackInputStream.read(byteArray, 0, 5);
        
            System.out.println("numberOfBytesRead = "+numberOfBytesRead);
            System.out.println(new String(byteArray));

            /*
             * Pushes back a portion of an array of bytes by
             * copying it to the front of the pushback
             * buffer.
             */
            pushbackInputStream.unread(byteArray, 0, 5);

            numberOfBytesRead = pushbackInputStream.read(byteArray, 0, 5);
            System.out.println("numberOfBytesRead = "+numberOfBytesRead);
            System.out.println(new String(byteArray));

        }
        finally
        {
            if (pushbackInputStream != null)
            {
                /*
                 * Closing a PushbackInputStream will also
                 * close the Reader instance from which the
                 * PushbackInputStream is reading.
                 */
                pushbackInputStream.close();
            }
        }
    }

}
Output
numberOfBytesRead = 5
Hello
numberOfBytesRead = 5
Hello
Click the below link to download the code:

CLICK HERE

No comments:

Post a Comment