Clase Java.util.zip.GZIPInputStream en Java

Esta clase implementa un filtro de flujo para leer datos comprimidos en formato de archivo GZIP.

Constructores

  • GZIPInputStream(InputStream in) : crea un nuevo flujo de entrada con un tamaño de búfer predeterminado.
  • GZIPInputStream(InputStream in, int size) : crea un nuevo flujo de entrada con el tamaño de búfer especificado.

Métodos :

  • void close() : Cierra este flujo de entrada y libera cualquier recurso del sistema asociado con el flujo.
    Syntax :public void close()
               throws IOException
    Specified by:
    close in interface Closeable
    Specified by:
    close in interface AutoCloseable
    Overrides:
    close in class InflaterInputStream
    Throws:
    IOException 
  • int read(byte[] buf, int off, int len) : Lee datos sin comprimir en una array de bytes. Si len no es cero, el método se bloqueará hasta que se pueda descomprimir alguna entrada; de lo contrario, no se leen bytes y se devuelve 0.
    Syntax :public int read(byte[] buf,
           int off,
           int len)
             throws IOException
    Overrides:
    read in class InflaterInputStream
    Parameters:
    buf - the buffer into which the data is read
    off - the start offset in the destination array b
    len - the maximum number of bytes read
    Returns:
    the actual number of bytes read, or -1 if the end of the
    compressed input stream is reached
    Throws:
    NullPointerException
    IndexOutOfBoundsException
    ZipException
    IOException 

Métodos heredados de la clase java.util.zip.InflaterInputStream
available, fill, mark, markSupported, read, reset, skip
Métodos heredados de la clase java.io.FilterInputStream
read
Métodos heredados de la clase java.lang.Object
clone, equals, finalize, getClass , hashCode, notificar, notificar a todos, toString, esperar, esperar, esperar

Programa :

                                                                                
//Java program demonstrating GZipInputStream methods 
  
import java.io.FileInputStream;              
import java.io.FileOutputStream;     
import java.io.IOException;              
import java.util.Arrays;
import java.util.zip.GZIPInputStream; 
  
class GZipInputStreamDemo        
{                                                                            
    public static void main(String[] args) throws IOException 
    {                                                                                            
        FileInputStream fis = new FileInputStream("file.txt"); 
        GZIPInputStream gzis = new GZIPInputStream(fis);    
          
        //Uncompressed FileContents      
        //01234567890 
        byte b[]=new byte[10];
                                                      
        //skipping 1 byte    
        gzis.skip(1);
          
        //illustrating available() and 
        //read(byte b[],int off,int len) 
        if( gzis.available()!=-1)    
            gzis.read(b);                    
        System.out.println(Arrays.toString(b));
                                      
        //closing the stream                                                 
        gzis.close();                                                        
    }                                                                        
} 

Producción :

[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]

Este artículo es una contribución de Nishant Sharma . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 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 *