Android 解压 Zip 压缩文件
时间: 2023-08-07 14:01:57 浏览: 96
android Zip解压、压缩
5星 · 资源好评率100%
你可以使用以下代码来解压一个zip压缩文件:
```java
import android.util.Log;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
public class ZipUtils {
private static final String TAG = "ZipUtils";
public static void unzip(String zipFile, String destination) {
try {
File dir = new File(destination);
if (!dir.exists()) {
dir.mkdirs();
}
FileInputStream fis = new FileInputStream(zipFile);
ZipInputStream zis = new ZipInputStream(fis);
ZipEntry ze;
byte[] buffer = new byte[1024];
int count;
while ((ze = zis.getNextEntry()) != null) {
String fileName = ze.getName();
File newFile = new File(destination + File.separator + fileName);
Log.d(TAG, "Unzipping " + newFile.getAbsolutePath());
// Create directories if necessary
if (ze.isDirectory()) {
newFile.mkdirs();
continue;
}
FileOutputStream fos = new FileOutputStream(newFile);
while ((count = zis.read(buffer)) != -1) {
fos.write(buffer, 0, count);
}
fos.close();
zis.closeEntry();
}
zis.close();
fis.close();
Log.d(TAG, "Unzip completed");
} catch (Exception e) {
Log.e(TAG, "Error while unzipping", e);
}
}
}
```
你只需要调用 `unzip` 方法,传入zip文件的路径和解压目标路径即可。请注意,你需要在AndroidManifest.xml文件中添加读写外部存储器权限:
```xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
```
确保在运行时动态请求权限(如果你的应用运行在Android 6.0及以上版本)。
希望能帮到你!如果你还有其他问题,请继续提问。
阅读全文