java中有zip包,可以使用

public void getZipFiles(String zipFile, String destFolder) throws IOException { BufferedOutputStream dest = null ZipInputStream zis = new ZipInputStream( new BufferedInputStream( new FileInputStream(zipFile))) ZipEntry entry while (( entry = zis.getNextEntry() ) != null) { System.out.println( "Extracting: " + entry.getName() ) int count byte data[] = new byte[BUFFER] if (entry.isDirectory()) { new File( destFolder + "/" + entry.getName() ).mkdirs() continue } else { int di = entry.getName().lastIndexOf( '/' ) if (di != -1) { new File( destFolder + "/" + entry.getName() .substring( 0, di ) ).mkdirs() } } FileOutputStream fos = new FileOutputStream( destFolder + "/" + entry.getName() ) dest = new BufferedOutputStream( fos ) while (( count = zis.read( data ) ) != -1) dest.write( data, 0, count ) dest.flush() dest.close() } }

rar的只能用第三方api,比如junrar

https://github.com/edmund-wagner/junrar