Android解压缩
生活随笔
收集整理的這篇文章主要介紹了
Android解压缩
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Android壓縮解壓縮不需要額外的第三方包支持。
public static void unZip(Context context, String assetName,String outputDirectory, boolean isReWrite) throws IOException {// 創(chuàng)建解壓目標(biāo)目錄File file = new File(outputDirectory);// 如果目標(biāo)目錄不存在,則創(chuàng)建if (!file.exists()) {file.mkdirs();}// 打開(kāi)壓縮文件InputStream inputStream = context.getAssets().open(assetName);ZipInputStream zipInputStream = new ZipInputStream(inputStream);// 讀取一個(gè)進(jìn)入點(diǎn)ZipEntry zipEntry = zipInputStream.getNextEntry();// 使用1Mbufferbyte[] buffer = new byte[1024 * 1024];// 解壓時(shí)字節(jié)計(jì)數(shù)int count = 0;// 如果進(jìn)入點(diǎn)為空說(shuō)明已經(jīng)遍歷完所有壓縮包中文件和目錄while (zipEntry != null) {// 如果是一個(gè)目錄if (zipEntry.isDirectory()) {file = new File(outputDirectory + File.separator+ zipEntry.getName());// 文件需要覆蓋或者是文件不存在if (isReWrite || !file.exists()) {file.mkdir();}} else {// 如果是文件file = new File(outputDirectory + File.separator+ zipEntry.getName());// 文件需要覆蓋或者文件不存在,則解壓文件if (isReWrite || !file.exists()) {file.createNewFile();FileOutputStream fileOutputStream = new FileOutputStream(file);while ((count = zipInputStream.read(buffer)) > 0) {fileOutputStream.write(buffer, 0, count);}fileOutputStream.close();}}// 定位到下一個(gè)文件入口zipEntry = zipInputStream.getNextEntry();}zipInputStream.close();}總結(jié)
以上是生活随笔為你收集整理的Android解压缩的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 怎么给图片自动抠图换背景?简单一招轻松操
- 下一篇: java音频频谱_Android 音乐频