Fermeture de ZipOutputStream

Je suis un peu confus. Je sais qu'un vide zip n'est pas légal. Mais à propos de cet extrait d'exemple:

ZipOutputStream zos = null; 
try
{
    zos = new ZipOutputStream(new FileOutputStream("..."));
    //
    //..
    //
}
finally
{
    zos.close();
}

Si pas de zip entrées avaient été ajoutés pour une raison quelconque (éventuellement situation exceptionnelle) ensuite, l'exception sera levée sur près tentative:

Exception in thread "main" java.util.zip.ZipException: ZIP file must have at least one entry
    at java.util.zip.ZipOutputStream.finish(ZipOutputStream.java:304)
    at java.util.zip.DeflaterOutputStream.close(DeflaterOutputStream.java:146)
    at java.util.zip.ZipOutputStream.close(ZipOutputStream.java:321)

Dans cette situation, quelle serait la façon la plus propre de fermer le flux de données?

Merci...

source d'informationauteur Lachezar Balev