2010-01-12 8 views
11

जावा के साथ एक संग्रह के अंदर फ़ाइल के लिए फ़ाइल या यूआरआई ऑब्जेक्ट प्राप्त करना संभव है? (ज़िप या जार संग्रह)जावा के साथ एक संग्रह के अंदर एक फ़ाइल के लिए एक फ़ाइल या यूआरआई वस्तु प्राप्त करें?

धन्यवाद हेमरोक।

jar:http://www.example.com/bar/baz.jar!/path/to/file 

JarURLConnection के लिए एपीआई डॉक्स देखें:: http://java.sun.com/javase/6/docs/api/java/net/JarURLConnection.html

jar: और !/ बीच

किसी भी URL हो सकता है

उत्तर

12

jar: प्रोटोकॉल एक जार संग्रह में एक संसाधन के लिए एक URI का निर्माण करने के लिए एक रास्ता है , file: यूआरएल सहित।

1

वास्तविक फ़ाइल डेटा के लिए, ZipFile#getInputStream(ZipEntry) देखें। उस वर्ग के लिए जावाडॉक्स बताते हैं कि इसका उपयोग कैसे किया जाए।

2
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; 
} 
inputStreamToFile विधि, गूगल एक फ़ाइल वस्तु :)

के बजाय "फाइल करने के लिए जावा InputStream", यद्यपि आप भी एक InputStream वस्तु के साथ खुश हो सकता है, के लिए

संबंधित मुद्दे