Skip to content
Related Articles

Related Articles

Improve Article

Deflater needsInput() function in Java with examples

  • Last Updated : 24 Jun, 2019


The needsInput() function of the Deflater class in java.util.zip is used to check if the input data buffer is empty. If the input data buffer is empty then setInput() function is called to provide input

Function Signature:

public boolean needsInput()

Syntax:

d.needsInput();

Parameter: The function requires no parameter

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



Exception: The function does not throw any exception

Example 1:




// 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
    {
        // 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];
  
        // does the deflater need input
        System.out.println("Input Buffer Empty ? :"
                           + d.needsInput());
  
        // compress the data
        int size = d.deflate(output);
  
        // compressed String
        System.out.println("Compressed String :"
                           + new String(output)
                           + "\n Size " + size);
  
        // original String
        System.out.println("Original String :"
                           + text + "\n Size "
                           + text.length());
  
        // does the deflater need input
        System.out.println("Input Buffer Empty ? :"
                           + d.needsInput());
  
        // end
        d.end();
    }
}

Output:

Input Buffer Empty ? :false
Compressed String :x?sOM?.N?/r???q??
 Size 21
Original String :GeeksforGeeksGeeksforGeeksGeeksforGeeksGeeksforGeeks
 Size 52
Input Buffer Empty ? :true

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

Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :