Exemple de méthode java.util.zip.Inflater.getRemaining ()

La description

le java.util.zip.Inflater.getRemaining()renvoie le nombre total d'octets restants dans le tampon d'entrée. Cela peut être utilisé pour savoir quels octets restent encore dans le tampon d'entrée une fois la décompression terminée.

Déclaration

Voici la déclaration pour java.util.zip.Inflater.getRemaining() méthode.

public int getRemaining()

Retour

le nombre total d'octets restants dans le tampon d'entrée.

Exemple

L'exemple suivant montre l'utilisation de la méthode java.util.zip.Inflater.getRemaining ().

package com.tutorialspoint;

import java.io.UnsupportedEncodingException;
import java.util.zip.DataFormatException;
import java.util.zip.Deflater;
import java.util.zip.Inflater;

public class InflaterDemo {
   public static void main(String[] args) 
      throws DataFormatException, UnsupportedEncodingException {
      String message = "Welcome to TutorialsPoint.com;"
         +"Welcome to TutorialsPoint.com;"
         +"Welcome to TutorialsPoint.com;"
         +"Welcome to TutorialsPoint.com;"
         +"Welcome to TutorialsPoint.com;"
         +"Welcome to TutorialsPoint.com;"
         +"Welcome to TutorialsPoint.com;"
         +"Welcome to TutorialsPoint.com;"
         +"Welcome to TutorialsPoint.com;"
         +"Welcome to TutorialsPoint.com;";
      System.out.println("Original Message length : " + message.length());
      byte[] input = message.getBytes("UTF-8");

      // Compress the bytes
      byte[] output = new byte[1024];
      Deflater deflater = new Deflater();
      deflater.setInput(input);
   
      deflater.finish();
      int compressedDataLength = deflater.deflate(output,0 , output.length, Deflater.NO_FLUSH);
      System.out.println("Total uncompressed bytes input :" + deflater.getTotalIn());
      System.out.println("Compressed Message Checksum :" + deflater.getAdler());     
      deflater.finished();

      System.out.println("Compressed Message length : " + compressedDataLength);

      // Decompress the bytes
      Inflater inflater = new Inflater();
      inflater.setInput(output, 0, compressedDataLength);
      byte[] result = new byte[1024];
      int resultLength = inflater.inflate(result);
      inflater.finished();

      // Decode the bytes into a String
      message = new String(result, 0, resultLength, "UTF-8");
      System.out.println("Remaining compressed bytes input :" + inflater.getRemaining());
      System.out.println("UnCompressed Message Checksum :" + inflater.getAdler());  
      System.out.println("UnCompressed Message length : " + message.length());
   }
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

Original Message length : 300
Total uncompressed bytes input :300
Compressed Message Checksum :368538129
Compressed Message length : 42
Remaining compressed bytes input :0
UnCompressed Message Checksum :368538129
UnCompressed Message length : 300
Impression