Je veux décompresser une archive 7zip/lzma avec plusieurs fichiers & en Java. J'ai essayé d'utiliser le SDK 7zip officiel, mais j'ai échoué, car mes compétences en programmation ne sont pas si avancées pour ce sujet. Cependant je trouve certaines librairies qui facilitent le support en Java, en parlant de LzmaOutputStream/LzmaInputStream - Cependant, je ne sais pas comment utiliser ces "flux" pour décompresser une archive multi-fichiers. Je suis coincé.Décompresser une archive 7zip avec plusieurs fichiers et répertoires en Java
Répondre
Dans cet exemple, remplacez compressed
par le nouveau fichier ("PATH_TO_FILE"). L'exemple de code donnera un flux de sortie, je suppose que LzmaOutputStream ou la bibliothèque a des méthodes appropriées pour convertir le flux en binaire ou en chaîne. Par défaut, Lzma n'est qu'un algorithme de compression, pas un archiveur de fichiers comme tar ou zip. (Remarque: Le programme 7-Zip est un archiveur de fichiers, mais la bibliothèque que vous avez liée ne prend pas en charge la traversée et le déballage de fichiers
Je suggère d'utiliser un algorithme de compression bien supporté comme Zip ou gz. LZMA vous pouvez utiliser le goudron pour construire une archive de fichier, puis le compresser avec LZMA. Ou utiliser zip avec zéro compression.
Voici un java TAR library.
Nous vous remercions de l'information, il est impossible de passer à une autre bibliothèque, car les fichiers 7zip sont fournis et le format ne peut pas être modifié ed (triste mais vrai). Je ne trouve pas non plus de spécification pour l'archive 7zip, ce qui est bizarre - comme il y a déjà quelques applications qui supportent 7zip, mais qui ne sont pas opensource. – Wolkenjaeger
Check this out http://stackoverflow.com/questions/3435751/comment décompresser-un-7zip-archive-en-androïde/35750229 # 35750229 – Simon