android文件压缩库,Android文件压缩和解压
Android文件压缩和解压
Java代码
package com.maidong.utils;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipException;
import java.util.zip.ZipFile;
import java.util.zip.ZipOutputStream;
import org.apache.http.protocol.HTTP;
public class ZipUtils {
private static final int BUFF_SIZE = 1024 * 1024; // 1M Byte
/**
* 批量压缩文件(夹)
*
* @param resFileList
* 要压缩的文件(夹)列表
* @param zipFile
* 生成的压缩文件
* @throws IOException
* 当压缩过程出错时抛出
*/
public static void zipFiles(Collection resFileList, File zipFile) throws IOException {
ZipOutputStream zipout = null;
try {
zipout = new ZipOutputStream(new BufferedOutputStream(new FileOutputStream(zipFile), BUFF_SIZE));
for (File resFile : resFileList) {
zipFile(resFile, zipout, "");
}
} finally {
if (zipout != null)
zipout.close();
}
}
/**
* 批量压缩文件(夹)
*
* @param resFileList
* 要压缩的文件(夹)列表
* @param zipFile
* 生成的压缩文件
* @param comment
* 压缩文件的注释
* @throws IOException
* 当压缩过程出错时抛出
*/
public static void zipFiles(Collection resFileList, File zipFile, String comment) throws IOException {
ZipOutputStream zipout = null;
try {
zipout = new ZipOutputStream(new BufferedOutputStream(new FileOutputStream(zipFile), BUFF_SIZE));
for (File resFile : resFileList) {
zipFile(resFile, zipout, "");
}
zipout.setComment(comment);
} finally {
if (zipout != null)
zipout.close();
}
}
/**
* 解压缩一个文件
*
* @param zipFile
* 压缩文件
* @param folderPath
* 解压缩的目标目录
* @throws IOException
* 当解压缩过程出错时抛出
*/
public static void upZipFile(File zipFile, String folderPath) throws ZipException, IOException {
File desDir = new File(folderPath);
if (!desDir.exists()) {
desDir.mkdirs();
}
ZipFile zf = new ZipFile(zipFile);
InputStream in = null;
OutputStream out = null;
try {
for (Enumeration> entries = zf.entries(); entries.hasMoreElements();) {
ZipEntry entry = ((ZipEntry) entries.nextElement());
in = zf.getInputStream(entry);
String str = folderPath + File.separator + entry.getName();
str = new String(str.getBytes("8859_1"), HTTP.UTF_8);
File desFile = new File(str);
if (!desFile.exists()) {
File fileParentDir = desFile.getParentFile();
if (!fileParentDir.exists()) {
&nb补充:移动开发 , Android ,
android文件压缩库,Android文件压缩和解压相关推荐
- Android UI 字体库(.ttf文件)的使用 -- xml方式
Android 8.0(API 级别 26)引入了"XML 中的字体"这项新功能, 可以在 res/font/ 文件夹中添加 font 文件. 要访问字体资源,请使用 @font/ ...
- android java静态库,Android make 中变量记录
转换mk文件到bp文件 $ out/soong/host/linux-x86/bin/androidmk Android.mk > Android.bp 编译不同类型的模块 编译成 Native ...
- android调用日历库,Android学习教程之日历库使用(15)
本教程为大家分享了Android日历库的使用方法,供大家参考,具体内容如下 MainActivity.java代码: package siso.weekv; import android.conten ...
- android移植第三方库,android移植第三方库
本文介绍如何使用 Android NDK(r7) 设置 Android 本地代码编译工具链,如何根据 Makefile 编写 Android.mk,并以 ffmpeg(0.8.5) 为例子介绍如何使用 ...
- SRA文件的下载(prefetch)和解压SRA文件(fastq-dump)
sra文件下载方式 NCBI-SRA和EBI-ENA数据库 SRA数据库: Sequence Read Archive:隶属NCBI (National Center for Biotechnolog ...
- android开发静态库,Android:如何正确链接我自己的静态库?
我有一个用C ++编写的Android项目,并且在链接阶段存在问题. 代码放在一些静态库中,这些库应该链接在一起. 我在网上发现了很多关于这个主题的问题和答案,其中大多数建议将我的库LOCAL_STA ...
- android数据库工具库,android 数据库工具种MyDbHelper
当前位置:我的异常网» 数据库 » android 数据库工具种MyDbHelper android 数据库工具种MyDbHelper www.myexceptions.net 网友分享于:2013 ...
- android后台文件下载库,android中如何下载文件并显示下载进度
最近开发中遇到需要下载文件的问题,对于一般的下载来说不用考虑断点续传,不用考虑多个线程,比如下载一个apk之类的,这篇文章讨论的就是这种情形. 这里主要讨论三种方式:AsyncTask.Service ...
- android 使用so库,Android 使用SO库
使用Android Studio调用so 开发. 创建项目 省略...... 创建jniLibs目录 在main中创建一个jniLibs文件夹 look,然后把so拷贝进去: 创建JNI 的API:c ...
最新文章
- Flask发送邮件,最基础
- 圆周率π的计算历程及各种脑洞大开的估计方法
- android聚焦时如何给控件加边框,edittext设置获得焦点时的边框颜色
- c 语言多参数函数,C/C++实现多参数函数编程
- python的变量与注释
- HDU 1071 The area
- 变压器的分类_变压器的作用
- 中国IT实验室--Visual C++编程电子书专题下载
- Spring Boot配置文件yml格式详解
- html空间登录页面制作,免费HTML网页空间(每月200 GB 流量托管静态网页超简单)...
- Bandicam录制视频
- win11解决打开文档延迟
- 同花顺没签三方要赔钱才能拿回三方!!!!
- 夏季旅游度假照片展示短视频AE模板
- 乱码html文档怎么恢复,乱码word文档怎么恢复
- Drf从入门到精通一(API接口、Postman、Restful规范、序列化、快速使用drf、CBV源码分析)
- mysql5.5手册读书日记(2)
- 新版Iconfont-阿里巴巴矢量图标库支持三种引用方式
- 图像处理(三)——中国传统工艺画风格的图像转换应用
- 莫比乌斯函数莫比乌斯反演