So komprimieren Sie serialisierte Objekte in eine Datei
Im letzten Abschnitt erfahren Sie mehr überhow to write or serialized an object into a file. In diesem Beispiel können Sie mehr als nur serialisieren. Sie können auch das serialisierte Objekt komprimieren, um die Dateigröße zu verringern.
Die Idee ist sehr einfach, nur die "GZIPOutputStream" für die Datenkomprimierung zu verwenden.
FileOutputStream fos = new FileOutputStream("c:\\address.gz"); GZIPOutputStream gz = new GZIPOutputStream(fos); ObjectOutputStream oos = new ObjectOutputStream(gz);
GZIP-Beispiel
In diesem Beispiel erstellen Sie ein "Adress" -Objekt, komprimieren es und schreiben es in eine Datei "c:\address.gz".
P.S Address object can refer to this article.
package com.example.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(); } } }