Función Deflater getTotalOut() en Java con ejemplos

La función getTotalOut() de la clase Deflater en java.util.zip devuelve el número total de bytes comprimidos de salida proporcionados hasta ahora.

Firma de función:

public int getTotalOut()

Sintaxis:

d.getTotalOut();

Parámetro: la función no requiere ningún parámetro

Tipo de devolución: la función devuelve un valor int que es el número total de bytes comprimidos de salida.

Excepción: la función no arroja ninguna excepción.

Ejemplo 1:

// Java program to describe the use
// of getTotalOut() 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];
  
        // 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());
  
        // get the total number of
        // compressed bytes Output so far
        System.out.println("Total Output value :"
                           + d.getTotalOut());
  
        // end
        d.end();
    }
}

Producción:

Compressed String :x?sOM?.N?/r???q??
 Size 21
Original String :GeeksforGeeksGeeksforGeeksGeeksforGeeksGeeksforGeeks
 Size 52
Total Output value :21

Nota: el problema surge cuando la longitud de la entrada es mayor que Integer.MAX_VALUE . Entonces el resultado puede desbordarse, deberíamos usar la función getBytesRead() en su lugar

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

Publicación traducida automáticamente

Artículo escrito por andrew1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *