private File createTemporaryFile(FsFolder folderRef, ZipFile zipfile, ZipEntry entry) throws IOException { String prefix = entry.getName(); int len = prefix.length(); Enumeration<? extends ZipEntry> enu = zipfile.entries(); while (enu.hasMoreElements()) { ZipEntry e = enu.nextElement(); String name = e.getName(); if (!name.equals(prefix) && name.startsWith(prefix)) { String suffix = name.substring(len); File file = new File(folderRef.m_file, suffix); if (e.isDirectory()) { file.mkdirs(); } else { file.createNewFile(); InputStream input = zipfile.getInputStream(entry); unzipTo(input, file); } } } // end while List<FsEntry> elements = folderRef.getFolderElements(); String entryname = entry.getName(); String resourceURL = "jar:file:" + zipfile.getName() + "!/" + entryname; File tmlFile = JarUtil.createTemporaryFile(resourceURL); return tmlFile; }