clase de herramienta java gzip

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;

public class GZIPUtils {Public     static final String GZIP_ENCODE_UTF_8 = "UTF-8";      Cadena final estática pública GZIP_ENCODE_ISO_8859_1 = "ISO-8859-1";

    
    byte estático público [] compress (String str, String encoding) {         if (str == null || str.length () == 0) {             return null;         }         ByteArrayOutputStream out = nuevo ByteArrayOutputStream ();         GZIPOutputStream gzip;         intente {             gzip = new GZIPOutputStream (fuera);             gzip.write (str.getBytes (codificación));             gzip.close ();         } captura (Excepción e) {             e.printStackTrace ();         }         return out.toByteArray ();     }     byte público estático [] compress (String str) lanza IOException {           return compress (str, GZIP_ENCODE_UTF_8);  














    


    }
    
    byte estático público [] descomprimir (byte [] bytes) {         if (bytes == null || bytes.length == 0) {             return null;         }         ByteArrayOutputStream out = nuevo ByteArrayOutputStream ();         ByteArrayInputStream en = nuevo ByteArrayInputStream (bytes);         intente {             GZIPInputStream ungzip = new GZIPInputStream (in);             byte [] búfer = nuevo byte [256];             int n;             while ((n = ungzip.read (búfer))> = 0) {                 out.write (búfer, 0, n);             }         } catch (Excepción e) {             e.printStackTrace ();         }















        return out.toByteArray ();
    }
    
    cadena estática pública descomprimir a cadena (byte [] bytes, codificación de cadena) {  
        if (bytes == null || bytes.length == 0) {  
            return null;  
        }  
        ByteArrayOutputStream out = nuevo ByteArrayOutputStream ();  
        ByteArrayInputStream en = nuevo ByteArrayInputStream (bytes);  
        intente {             GZIPInputStream ungzip = new GZIPInputStream (in);               byte [] búfer = nuevo byte [256];               int n;               while ((n = ungzip.read (búfer))> = 0) {                   out.write (búfer, 0, n);               }               return out.toString (codificación);







        } captura (Excepción e) {             e.printStackTrace ();         }         return null;     }     public static String descompressToString (byte [] bytes) {           return descompressToString (bytes, GZIP_ENCODE_UTF_8);       }      public static void main (String [] args) lanza IOException {         String s = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";         System.out.println ("字符串 长度 :" + s.length ());         System.out.println ("压缩 后 ::" + comprimir (s) .longitud);         System.out.println ("解压 后 :" + descomprimir (comprimir (s)). Longitud);         System.out.println ("解压 字符串 后 ::" + descomprimirToString (comprimir (s)). Length ());




    



    








 

Supongo que te gusta

Origin blog.csdn.net/u010689853/article/details/112787551
Recomendado
Clasificación