java解压缩文件,解决中文乱码。
来源:互联网 发布:工作任务安排软件 编辑:程序博客网 时间:2024/05/02 15:42
import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.util.Enumeration;import org.apache.tools.ant.Project;import org.apache.tools.ant.types.FileSet;import org.apache.tools.zip.ZipEntry;import org.apache.tools.zip.ZipFile;/** * @author 王泽浩 * * E-mail: 1028625100@qq.com * * @version v1.1 * * 创建时间:2015年1月4日 上午11:18:47 * * 使用ant工具包可以解决解压缩文件中文乱码问题,需要引入ant-x.x.x.jar(项目使用的是ant-1.9.4.jar) */public class Zip {/** * 解压zip * * @param path * 解压到的目录("D:/test") * * @param zipFile * * 压缩文件(new ZipFile(new File("D:/test.zip"))) * * @return boolean 返回true时解压成功,false择解压失败 */public static boolean unZip(String path, ZipFile zipFile) {FileOutputStream fileOutputStream = null;InputStream inputStream = null;File file = null;try {int bufSize = 512;byte[] buf = new byte[bufSize];int readedBytes;for (Enumeration<ZipEntry> entries = zipFile.getEntries(); entries.hasMoreElements();) {ZipEntry entry = entries.nextElement();file = new File(path + "/" + entry.getName());if (entry.isDirectory()) {file.mkdirs();} else {File parent = file.getParentFile();if (!parent.exists()) {parent.mkdirs();}inputStream = zipFile.getInputStream(entry);fileOutputStream = new FileOutputStream(file);while ((readedBytes = inputStream.read(buf)) > 0) {fileOutputStream.write(buf, 0, readedBytes);}close(fileOutputStream, inputStream);}}zipFile.close();return true;} catch (Exception e) {e.printStackTrace();return false;} finally {close(fileOutputStream, inputStream);}}/** * 压缩文件 * * @param src * 将要压缩的文件夹(new File("D:/test/")) * * @param dest * 将压缩文件夹存储到什么位置(new File(D:/test.zip)) * * @return boolean 返回true时压缩成功,false择压缩失败 */public static boolean zip(File src, File dest) {try {Project prj = new Project();org.apache.tools.ant.taskdefs.Zip zip = new org.apache.tools.ant.taskdefs.Zip();zip.setProject(prj);zip.setDestFile(dest);FileSet fileSet = new FileSet();fileSet.setProject(prj);if (src.isFile()) {fileSet.setFile(src);} else {fileSet.setDir(src);}zip.addFileset(fileSet);zip.execute();return true;} catch (Exception e) {e.printStackTrace();return false;}}/** * 关闭流 * * @param autoCloseables */public static void close(AutoCloseable... autoCloseables) {try {if (autoCloseables != null) {for (AutoCloseable autoCloseable : autoCloseables) {autoCloseable.close();}}} catch (Exception e) {e.printStackTrace();}}}
0 0
- java解压缩文件,解决中文乱码。
- Java 压缩、解压缩文件(中文乱码问题已解决)
- 解压缩zip文件(解决中文乱码)
- 解决Android下解压缩文件中文路径乱码
- Java读取文件 解决中文乱码问题
- java 文件下载且解决中文乱码
- Java 读取properties文件中文乱码解决
- Java文件下载之解决中文乱码
- Java 实现文件下载--解决中文乱码
- Ubuntu 16.04 解压缩zip文件中文乱码
- 压缩解压缩文件夹文件——解决了中文乱码问题
- 解决python中用zipfile解压缩文件时中文文件名乱码的问题
- 解决java中ZipFile解压缩时候的中文路径和乱码问题
- 【转载】JAVA压缩 解压缩zip 并解决linux下中文乱码
- Java读写中文文件,解决中文乱码问题
- 解决java中文乱码
- Java中文乱码解决
- Java中文乱码解决
- 两个listbox 复制
- Maven 搭建过程及应用
- php服务器时间配置
- bgslibrary:实现了二十来种视频前景提取的算法
- Linux ALSA声卡驱动之一:ALSA架构简介
- java解压缩文件,解决中文乱码。
- easyui 表头动态生成
- Java 项目UML反向工程转化工具
- Python3学习笔记
- ExtJS form表单常用元素操作
- @Repository、@Service、@Controller 和 @Component
- 39通讯录界面的每个item的编写(row_contact.xml文件)
- ios中怎么修改导航栏标题颜色
- vs2010引用office组件后的编辑并继续