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 = "Lazyroar" , 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()