est-il possible d'obtenir un objet ou un objet URI pour un fichier à l'intérieur d'une archive avec Java? (Archives Zip ou Jar) P>
Merci Hemeroc. P>
3 Réponses :
the JAR: code> Protocole est un moyen de construire une URI à une ressource dans une archive JAR: jar:http://www.example.com/bar/baz.jar!/path/to/file
Pour les données de fichier réelles, voir ZIPFILE # GETInPutStream (Zipenterry) . Les Javadocs pour cette classe expliquent comment il doit être utilisé. P>
public List<File> getFilesInJar(String jarName){
List<File> result = new ArrayList<File>();
File jarFile = new File(jarName);
JarInputStream jarFile = new JarInputStream(new FileInputStream(jarFile));
JarEntry jarEntry;
while ((jarEntry = jarFile.getNextJarEntry()) != null) {
result.add(inputStreamToFile(jarFile.getInputStream(jarEntry)));
}
return result;
}
for the inputStreamToFile method, google "java inputStream to file", although you might be happy with an InputStream object also, instead of a File object :)