ut.println("unziping " + zipEntry.getName()); if (zipEntry.isDirectory()) { String name = zipEntry.getName(); //如果得到的是个目录, // 就创建在指定的文件夹下创建目录 being unzip file including file name and path ; unzip files to this directory
name = name.substring(0, name.length() - 1); File f = new File(outputDirectory + File.separator + name); f.mkdir(); //System.out.println("创建目录:" + outputDirectory + File.separator +
name); } else { String fileName = zipEntry.getName(); fileName = fileName.replace('\\', '/'); // System.out.println("测试文件 1:" +fileName); if (fileName.indexOf("/") != -1){ getDir(outputDirectory, fileName.substring(0, fileName.lastIndexOf("/"))); //System.out.println("文件的路径:"+fileName); fileName=fileName.substring(fileName.lastIndexOf("/")+1,fileName.lengt h()); } File f = new File(outputDirectory + File.separator + zipEntry.getName()); f.createNewFile(); InputStream in = zipFile.getInputStream(zipEntry); FileOutputStream out=new FileOutputStream(f); byte[] by = new byte[1024]; int c; while ( (c = in.read(by)) != -1) { out.write(by, 0, c); } out.close(); in.close(); } } }catch (Exception ex) { System.out.println(ex.getMessage()); } } /** * this mothed will unzip all the files which in your specifeid folder; * @param filesFolder * @param outputDirectory */ public void unzipFiles(String filesFolder ,String outputDirectory){ File zipFolder=new File (filesFolder); String zipFiles []; String zipFileAbs; try{ zipFiles=zipFolder.list();
for(int i=0;i