import java
.io.File
import java
.io.FileOutputStream
import java
.io.IOException
import java
.io.InputStream
import java
.util.Enumeration
import org
.apache.tools.zip.ZipEntry
import org
.apache.tools.zip.ZipFile
import org
.springframework.stereotype.Service
import org
.springframework.transaction.annotation.Transactional
public class unZipFiles {
//zip文件路径
String fileAddress =
"D:\\test.zip"
//zip文件解压地址
String unZipAddress =
"F:\\unZipFiles\\"
//去目录下寻找文件
File file = new File(fileAddress)
ZipFile zipFile = null
try {
zipFile = new ZipFile(file,
"GBK")
} catch (IOException exception) {
exception
.printStackTrace()
System
.out.println(
"解压文件不存在!")
}
Enumeration e = zipFile
.getEntries()
while(e
.hasMoreElements()) {
ZipEntry zipEntry = (ZipEntry)e
.nextElement()
if(zipEntry
.isDirectory()) {
String name = zipEntry
.getName()
name = name
.substring(
0,name
.length()-
1)
File f = new File(unZipAddress + name)
f
.mkdirs()
} else {
File f = new File(unZipAddress + zipEntry
.getName())
f
.getParentFile()
.mkdirs()
f
.createNewFile()
InputStream is = zipFile
.getInputStream(zipEntry)
FileOutputStream fos = new FileOutputStream(f)
int length =
0
byte[] b = new byte[
1024]
while((length=is
.read(b,
0,
1024))!=-
1) {
fos
.write(b,
0, length)
}
is
.close()
fos
.close()
}
}
if (zipFile != null) {
zipFile
.close()
}
file
.deleteOnExit()
}
转载于:https://www.cnblogs.com/bilaisheng/p/10211026.html