Open In App

Inflater needsInput() function in Java with examples

Last Updated : 24 Jun, 2019
Improve
Improve
Like Article
Like
Save
Share
Report


The needsInput() function of the Inflater class returns true if the input data buffer is empty else return false, if the input data buffer is empty then setInput() function is called to provide input

Function Signature:

public boolean needsInput()

Syntax:

i.needsInput();

Parameter: The function requires no parameter

Return Type: The function returns boolean value i.e. it returns true if the input buffer empty else return false.

Exception: The function does not throw any exception

Example 1: use of needsInput() function




// Java program to describe the use
// of needsInput() function
  
import java.util.zip.*;
import java.io.UnsupportedEncodingException;
  
class GFG {
    public static void main(String args[])
        throws UnsupportedEncodingException,
               DataFormatException
    {
  
        // compress the data
  
        // deflater
        Deflater d = new Deflater();
  
        // get the text
        String pattern = "GeeksforGeeks", text = "";
  
        // generate the text
        for (int i = 0; i < 4; i++)
            text += pattern;
  
        // set the input for deflator
        d.setInput(text.getBytes("UTF-8"));
  
        // finish
        d.finish();
  
        // output bytes
        byte output[] = new byte[1024];
  
        // compress the data
        int size = d.deflate(output);
  
        // end
        d.end();
  
        // end of compression
  
        // use Inflater to get back the original data
  
        // Inflater
        Inflater i = new Inflater();
  
        // does the Inflater need input
        System.out.println("Input Buffer Empty ? :"
                           + i.needsInput());
  
        // set the input for inflator
        i.setInput(output);
  
        // output bytes
        byte inflater_output[] = new byte[1024];
  
        // uncompress the data
        int org_size = i.inflate(inflater_output);
  
        // output of inflater and deflater
        System.out.println("Compressed output of deflater : "
                           + new String(output));
        System.out.println("Compressed output of Inflater : "
                           + new String(inflater_output, "UTF-8"));
  
        // does the Inflater need input
        System.out.println("Input Buffer Empty ? :"
                           + i.needsInput());
  
        // end
        i.end();
    }
}


Output:

Reference: https://docs.oracle.com/javase/7/docs/api/java/util/zip/Inflater.html#needsInput()



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads