Apache Commons Compress prend en charge les flux de fichiers (via compresseurs) et contenu structuré (via archiveurs).
La bibliothèque peut être utilisée pour les opérations de compression et de décompression, en collaboration avec un grand nombre relatif de formats d'archives, étant l'un des ces solutions bien connues dans la communauté Java.
La bibliothèque ne est pas parfait, certains problèmes étant encore en cours de développement pour chaque format de fichier d'archive, mais dans l'ensemble, si vous avez besoin pour soutenir un grand nombre de formats de compression et ne voulez pas utiliser les bibliothèques individuelles encombrants pour chaque format, le Commons Compress package peut être votre meilleure réponse
Caractéristiques :.
Quoi de neuf dans cette version:
- Les inputstreams, ar et tar Snappy peut échouer pour lire un flux non tamponnée dans certains cas.
- IOUtils # saut pourrait sauter moins d'octets que demandé même si plus pouvait-on lire dans le flux.
- ArchiveStreams valident maintenant il ya une entrée en cours avant la lecture ou l'écriture des données d'entrée.
- ArjArchiveInputStream # canReadEntryData testé l'entrée actuelle du flux plutôt que son argument.
- ChangeSet # supprimer et deleteDir maintenant traiter correctement les entrées anonymes.
- Ajout de quelques chèques nuls pour améliorer la robustesse.
- TarArchiveInputStream n'a pas pu lire les archives avec vides champs uid / gid.
- TarArchiveInputStream maintenant jette à nouveau une exception lorsqu'il rencontre une archive tronquée lors de la lecture de la dernière entrée.
- Adapté TarArchiveInputStream # passer à la méthode # IOUtils modifiés de saut. Merci à BELUGA BEHR.
Ce qui est nouveau dans la version 1.7:.
- support en lecture seule pour la compression Snappy
- support en lecture seule pour les fichiers .Z.
- ZipFile et ZipArchiveInputStream prennent désormais en charge les entrées compressées en utilisant la méthode de rétraction lecture.
- GzipCompressorOutputStream prend désormais en charge la mise en (nom de fichier, commentaire, date de modification, le système d'exploitation et des drapeaux supplémentaires) le niveau de compression et l'en-tête métadonnées
- ZipFile et ZipArchiveInputStream prennent désormais en charge les entrées compressées en utilisant la méthode de lecture imploser.
- ZipFile et le fichier 7z classes implémentent désormais Closeable et peuvent être utilisés dans essayage avec-ressources constructions.
Ce qui est nouveau dans la version 1.5:
- CompressorStreamFactory dispose d'une option pour créer des flux de décompression que décompresser le plein entrée pour les formats prenant en charge plusieurs flux concaténés.
Quoi de neuf dans la version 1.4:
- Support pour le format XZ a été ajouté
Quoi de neuf dans la version 1.3:
- Support pour le format de pack200 a été ajouté
- support en lecture seule pour le format utilisé par la décharge Unix (8) outil a été ajouté.
Ce qui est nouveau dans la version 1.2:
- Nouvelles fonctionnalités:
- ZipArchiveEntry a une nouvelle méthode getRawName qui fournit les octets originaux qui composent le nom. Cela peut permettre à un code d'utilisateur pour détecter l'encodage.
- TarArchiveEntry permet d'accéder aux drapeaux qui déterminent si ce est un lien symbolique archivé, un tuyau ou autre & quot; & quot rare; objet du système de fichiers.
- bogues corrigés:
- ZipArchiveInputStream pourrait échouer avec un & quot; tronqué postal & quot; message d'erreur pour les entrées entre 2 Go et 4 Go en taille.
- TarArchiveInputStream détecte désormais clairsemées entrées en utilisant le format oldgnu et correctement rapports qu'il ne peut pas extraire leur contenu.
- Le Javadoc pour ZipArchiveInputStream # passez maintenant correspond à la mise en œuvre, le code a été rendue plus défensive.
- ArArchiveInputStream échoue si les entrées ne contiennent que des ébauches pour userId ou groupId.
- ZipFile peut fuir les ressources sur certains JDK.
- BZip2CompressorInputStream throws IOException si les rendements de flux sous-jacents disponibles () == 0. retiré le chèque.
- Appeler close () sur fluxEntrée retourné par CompressorStreamFactory.createCompressorInputStream () ne ferme pas le flux d'entrée sous-jacente.
- TarArchiveOutputStream # finition écrit maintenant toutes les données mémorisées dans le flux
- Changements:
- ZipFile implémente maintenant finaliser ce qui ferme le fichier sous-jacent.
- Certains fichiers tar pas reconnu par ArchiveStreamFactory.
Exigences :
- Java 5 ou supérieur
Commentaires non trouvées