The getTotalIn() function of the Inflater class returns the total number of compressed bytes input provided till now.
Function Signature:
public int getTotalIn()
Syntax:
i.getTotalIn();
Parameter: The function requires no parameter
Return Type: The function returns int value which is the total number of compressed bytes input .
Exception: The function does not throw any exception
Example 1: use of getTotalIn() function
// Java program to describe the use // of getTotalIn() 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();           // 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" ));           // get the total number of compressed bytes input so far         System.out.println( "Total Input value :" + i.getTotalIn());           // end         i.end();     } } |
Output:
Note: The problem arises when the length of the input is greater than Integer.MAX_VALUE then the result may overflow, we should use getBytesRead() function instead
Reference: https://docs.oracle.com/javase/7/docs/api/java/util/zip/Inflater.html#getTotalIn()