I am trying to read an InputStream twice. But when I try to reset the stream and read it says no bytes read. I changed from InputStream to BufferedInputStream still reset doesn't work for me. What could be the mistake that I am doing?
Below is my code:
byte[] buffer = new byte[READ_BUFFER_SIZE];
int bytesRead=0;
        InputStream _baseStream =  new FileInputStream("slot.txt");
        BufferedInputStream buff =new BufferedInputStream(_baseStream);
        try {
            bytesRead = buff.read(buffer, 0, READ_BUFFER_SIZE);
            System.out.println("1. "+bytesRead);
        } catch (IOException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        if(bytesRead>0)
        {
            buff.mark(10);
            buff.reset();
            try {
                //bytesRead = _baseStream.read(buffer, 0, READ_BUFFER_SIZE);
                bytesRead = buff.read(buffer, 0, READ_BUFFER_SIZE);
                System.out.println("2. "+bytesRead);
            } catch (IOException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
        }
Output:
- 39
- -1
 
    