Рубрики
Без рубрики

Как сжать сериализованный объект в файл

– Как сжать сериализованный объект в файл

В последнем разделе вы узнаете о как записать или сериализовать объект в файл . В этом примере вы можете сделать больше, чем просто сериализовать его, вы также можете сжать сериализованный объект, чтобы уменьшить размер файла.

Идея очень проста, просто используйте ” GZIPOutputStream ” для сжатия данных.

FileOutputStream fos = new FileOutputStream("c:\\address.gz");
GZIPOutputStream gz = new GZIPOutputStream(fos);
ObjectOutputStream oos = new ObjectOutputStream(gz);

Пример GZIP

В этом примере вы создадите объект “Адрес”, сожмете его и запишете в файл ” c:\\address.gz “.

Объект адреса P.S может ссылаться на это статья .

package com.mkyong.io;

import java.io.FileOutputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.zip.GZIPOutputStream;

public class Serializer implements Serializable{

   public static void main (String args[]) {
    
	   Serializer serializer = new Serializer();
	   serializer.serializeAddress("wall street", "united state");
   }

   public void serializeAddress(String street, String country){
	   
	   Address address = new Address();
	   address.setStreet(street);
	   address.setCountry(country);
	   
	   try{
		   
		   FileOutputStream fos = new FileOutputStream("c:\\address.gz");
		   GZIPOutputStream gz = new GZIPOutputStream(fos);

		   ObjectOutputStream oos = new ObjectOutputStream(gz);
		   
		   oos.writeObject(address);
		   oos.close();
		   
		   System.out.println("Done");
		   
	   }catch(Exception ex){
		   ex.printStackTrace();
	   }	 
   }
}

Оригинал: “https://mkyong.com/java/how-to-compress-serialized-object-into-file/”