-
java生成压缩文件zip怎么给压缩文件添加进度条
2018-01-31 03:19:171.java生成压缩文件zip 2.怎么给压缩文件添加进度条 -
iOS 解决Mac电脑无法压缩zip压缩文件zip成cpgz
2017-07-16 21:00:30//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄 压缩失败图: 解压失败图: ...导致这种情况的原因有一下几点: 1、zip文件已经损坏;... 2、zip文件下载时没有下载完全...首先你可以验证一下你的zip文件md5 hash//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄
压缩失败图:
解压失败图:
导致这种情况的原因有一下几点:
1、zip文件已经损坏;
2、zip文件下载时没有下载完全;
3、浏览器在下载或者下载完成zip文件时,对其进行了错误处理;4、bug导致。
首先你可以验证一下你的zip文件md5 hash或者SHA1(这些数据一般可以在你下载的网页上边扎到),如果校验显示不同,说明你的文件有损坏或者下载不完全。
Tips:校验MD5 hash方法:打开终端,输入MD5,空格,然后输入需要验证的文件路径(可以直接将文件拖进去)
校验sha1:打开终端,输入shasum,空格, 然后输入需要验证的文件路径(可以直接将文件拖进去)解决办法:
1、使用其他浏览器重新下载zip文件
如果你是使用Firefox、safari、Chrome等浏览器下载的zip文件,有时候只是在解压前重新下载的问题。这个对于小文件好说,大文件的话确实没有必要,如果你经过校验MD5或者SHA1没问题,那你可以直接尝试下边两种方法。
2、在终端使用unzip
unzip命令可以防止出现zip-cpgz循环,下边以weiphone.zip为例介绍改工具如何使用
打开终端,输入unzip,空格,然后输入zip文件路径(可以直接将文件拖进去),然后回车。
这是你可以在终端窗口看到解压情况,如果没有在当前文件夹中找到,可以到你的个人文件夹中看看(~/)。3、安装、使用Unarchiver(最有效)
Unarchiver是一款全能型第三方压缩工具,可以对多种压缩文件格式进行解压。他的使用跟archiver utility一样,打开压缩文件自动解压,完成后自动退出。
下载地址是 http://wakaba.c3.cx/s/apps/unarchiver.html谢谢!!!
-
解决Mac电脑无法压缩zip压缩文件zip成cpgz
2016-07-23 09:21:321、zip文件已经损坏; 2、zip文件下载时没有下载完全; 3、浏览器在下载或者下载完成zip文件时,对其进行了错误处理; 4、bug导致。 首先你可以验证一下你的zip文件md5 hash或者SHA1(这些数据一般可以...导致这种情况的原因有一下几点:
1、zip文件已经损坏;
2、zip文件下载时没有下载完全;
3、浏览器在下载或者下载完成zip文件时,对其进行了错误处理;4、bug导致。
首先你可以验证一下你的zip文件md5 hash或者SHA1(这些数据一般可以在你下载的网页上边扎到),如果校验显示不同,说明你的文件有损坏或者下载不完全。
Tips:校验MD5 hash方法:打开终端,输入MD5,空格,然后输入需要验证的文件路径(可以直接将文件拖进去)
校验sha1:打开终端,输入shasum,空格, 然后输入需要验证的文件路径(可以直接将文件拖进去)解决办法:
1、使用其他浏览器重新下载zip文件
如果你是使用Firefox、safari、Chrome等浏览器下载的zip文件,有时候只是在解压前重新下载的问题。这个对于小文件好说,大文件的话确实没有必要,如果你经过校验MD5或者SHA1没问题,那你可以直接尝试下边两种方法。
2、在终端使用unzip
unzip命令可以防止出现zip-cpgz循环,下边以weiphone.zip为例介绍改工具如何使用
打开终端,输入unzip,空格,然后输入zip文件路径(可以直接将文件拖进去),然后回车。
这是你可以在终端窗口看到解压情况,如果没有在当前文件夹中找到,可以到你的个人文件夹中看看(~/)。3、安装、使用Unarchiver(最有效)
Unarchiver是一款全能型第三方压缩工具,可以对多种压缩文件格式进行解压。他的使用跟archiver utility一样,打开压缩文件自动解压,完成后自动退出。
下载地址是 http://wakaba.c3.cx/s/apps/unarchiver.html -
java 压缩文件zip
2012-08-14 13:14:121.引言 之前在 压缩与解压1---字符串的压缩与解压(http://www.cnblogs.com/java-pan/archive/2012/05/12/gzip1.html) 中介绍过对字符串的压缩...解压这里就不讲了,解压的话没什么实际意义,因为文件压缩后为zip格式1.引言
之前在 压缩与解压1---字符串的压缩与解压(http://www.cnblogs.com/java-pan/archive/2012/05/12/gzip1.html)
中介绍过对字符串的压缩和解压,这个解压和解决用在系统之间大数据传输的时候还是可以大大的减少网络流量的。本节主要本别介绍对单个文件、多个文件的压缩。解压这里就不讲了,解压的话没什么实际意义,因为文件压缩后为zip格式的文件,现在windows系统解压这个格式的文件真是特多了。我个人认为这个压缩文件的功能在以下场景使用就比较合理:比如某运行的系统,在每天或者每周的固定时间会导出一批报表,如果我们不对导出的报表进行压缩,那么磁盘空间会大幅度的增加,如果我们对导出的文件进行压缩,那么磁盘空间的开销就会大大节省。
2.文件压缩的中文问题
中文,一直是个头疼的问题,同样,在这里我们对文件压缩也会出现中文乱码问题。对压缩的文件,如果文件名称是中文,压缩完成后,可以看到压缩包中的文件名称是乱码(文件的内容有中文,压缩后不会出现中文乱码问题),对于这种情况我们只要用ANT中的ant.jar中的类就可以解决此问题。压缩过程中会用到ZipEntry和ZipOutputStream类,如果我采用第一种方式,这样就会出现中文乱码;如果我采用第二种方式,中文乱码问题就可以解决。文件运行的对比效果我会在后面把截图贴出来做一下对比。
第一种方式:
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
以上采用JDK API中自带的类时压缩的文件名会出现中文乱码
第二种方式:
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipOutputStream;以上采用ANT中ant.jar包的类可以解决压缩的文件名的中文乱码问题
3.下载jar包
对于本节我只需要一个jar包,即ant.jar,提供jar包的下载路径如下:
http://files.cnblogs.com/java-pan/jar-ant.rar
4.method&class
ZipEntry:
ZipOutputStream:
5.代码文件
ZipFileUtil.java
package zip; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; /* * 采用JDK API中自带的类时压缩的文件会出现中文乱码 */ //import java.util.zip.ZipEntry; //import java.util.zip.ZipOutputStream; /* * 采用ANT中ant.jar包的类可以解决中文乱码问题 */ import org.apache.tools.zip.ZipEntry; import org.apache.tools.zip.ZipOutputStream; /** *Module: ZipFileUtil.java *Description: 用zip对单个和多个文件进行压缩 *Company: xxx *Version: 1.0.0 *Author: pantp *Date: May 24, 2012 */ public class ZipFileUtil { public static void main(String[] args) throws Exception { /* * 测试单个文件的ZIP压缩 * 指定文件路径可以是绝对路径,也可以是相对路径 */ String file = "src/zip/文件1.txt"; String zipFile1 = "src/zip/单个文件压缩.zip"; boolean flag1 = zipSingleFile(file, zipFile1); System.out.println("\n**************压缩【单】个文件<author:pantp>******************************\n"); if (flag1) { System.out.println("单个文件ZIP压缩成功,压缩后文件所在路径为:"+zipFile1); } else { System.out.println("单个文件ZIP压缩失败"); } System.out.println("\n*******************************************************************************"); /* * 测试多个文件的ZIP压缩 * 指定文件路径可以是绝对路径,也可以是相对路径 */ /* String files[] = { "src/zip/文件1.txt", "src/zip/file2.txt" }; String zipFile2 = "src/zip/多个文件压缩.zip"; boolean flag2 = zipFiles(files, zipFile2); System.out.println("\n**************压缩【多】个文件<author:pantp>******************************\n"); if (flag2) { System.out.println("多个文件ZIP压缩成功,压缩后文件所在路径为:"+zipFile2); } else { System.out.println("多个文件ZIP压缩失败"); } System.out.println("\n*******************************************************************************"); */ } /** *<p> *@param file 待压缩文件的名称 例如,src/zip/文件1.txt *@param zipFile 压缩后文件的名称 例如,src/zip/单个文件压缩.zip *@return boolean *@throws :IOException *@Function: zipSingleFile *@Description:单个文件的压缩 *@version : v1.0.0 *@author: pantp *@Date:May 24, 2012 *</p> *Modification History: * Date Author Version Description * --------------------------------------------------------------------- * May 24, 2012 pantp v1.0.0 Create */ public static boolean zipSingleFile(String file, String zipFile) throws IOException { boolean bf = true; File f = new File(file); if (!f.exists()) { System.out.println("文件不存在"); bf = false; } else { File ff = new File(zipFile); if (!f.exists()) { ff.createNewFile(); } // 创建文件输入流对象 FileInputStream in = new FileInputStream(file); // 创建文件输出流对象 FileOutputStream out = new FileOutputStream(zipFile); // 创建ZIP数据输出流对象 ZipOutputStream zipOut = new ZipOutputStream(out); // 得到文件名称 String fileName = file.substring(file.lastIndexOf('/') + 1, file.length()); // 创建指向压缩原始文件的入口 ZipEntry entry = new ZipEntry(fileName); zipOut.putNextEntry(entry); // 向压缩文件中输出数据 int number = 0; byte[] buffer = new byte[512]; while ((number = in.read(buffer)) != -1) { zipOut.write(buffer, 0, number); } zipOut.close(); out.close(); in.close(); } return bf; } /** *<p> *@param files 待压缩的文件列表 例如,src/zip/文件1.txt, src/zip/file2.txt *@param zipfile 压缩后的文件名称 例如,src/zip/多个文件压缩.zip *@return boolean *@throws :Exception *@Function: zipFiles *@Description:多个文件的ZIP压缩 *@version : v1.0.0 *@author: pantp *@Date:May 24, 2012 *</p> *Modification History: * Date Author Version Description * --------------------------------------------------------------------- * May 24, 2012 pantp v1.0.0 Create */ public static boolean zipFiles(String[] files, String zipfile) throws Exception { boolean bf = true; // 根据文件路径构造一个文件实例 File ff = new File(zipfile); // 判断目前文件是否存在,如果不存在,则新建一个 if (!ff.exists()) { ff.createNewFile(); } // 根据文件路径构造一个文件输出流 FileOutputStream out = new FileOutputStream(zipfile); // 传入文件输出流对象,创建ZIP数据输出流对象 ZipOutputStream zipOut = new ZipOutputStream(out); // 循环待压缩的文件列表 for (int i = 0; i < files.length; i++) { File f = new File(files[i]); if (!f.exists()) { bf = false; } try { // 创建文件输入流对象 FileInputStream in = new FileInputStream(files[i]); // 得到当前文件的文件名称 String fileName = files[i].substring( files[i].lastIndexOf('/') + 1, files[i].length()); // 创建指向压缩原始文件的入口 ZipEntry entry = new ZipEntry(fileName); zipOut.putNextEntry(entry); // 向压缩文件中输出数据 int nNumber = 0; byte[] buffer = new byte[512]; while ((nNumber = in.read(buffer)) != -1) { zipOut.write(buffer, 0, nNumber); } // 关闭创建的流对象 in.close(); } catch (IOException e) { e.printStackTrace(); bf = false; } } zipOut.close(); out.close(); return bf; } }
6.运行测试
(1)在项目的src的zip目录下新建以下2个测试文件
文件1.txt
file2.txt
(2)运行main方法中单个文件压缩的方法,运行结果如图:
后台日志如下:
生成的zip文件如下:
*(
(3)运行main方法中多个文件压缩的方法,运行结果如图:
后台日志如下:
生成的zip文件如下:
压缩后的文件中不会出现中文乱码问题,打开多个文件压缩.zip文件中的文件1.txt,内容如下:
采用JDK自带的类会出现中文乱码问题,效果如图:
-
压缩文件ZipEntry中文乱码
2015-12-18 15:04:39压缩文件内文件名为中文是出现乱码: ZipEntry zipEntry = new ZipEntry(zipEntryName); 将引用由java.util.zip.*换成org.apache.tools.zip.*的就可以了,同时设置编码,java.util.zip里面没有设置编码的方法 /*...压缩文件内文件名为中文是出现乱码:
ZipEntry zipEntry = new ZipEntry(zipEntryName);
将引用由java.util.zip.*换成org.apache.tools.zip.*的就可以了,同时设置编码,java.util.zip里面没有设置编码的方法/*import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream;*/ import org.apache.tools.zip.ZipEntry; import org.apache.tools.zip.ZipOutputStream;
// 压缩条目不是具体独立的文件,而是压缩包文件列表中的列表项,称为条目,就像索引一样 ZipEntry zipEntry = new ZipEntry(zipEntryName); // 定位到该压缩条目位置,开始写入文件到压缩包中 zipStream.putNextEntry(zipEntry); // 支持中文 zipStream.setEncoding("GBK");
-
Centos中打包压缩文件 zip 命令
2016-10-03 01:39:05们再linux中常见的压缩文件有.tar.gz,.zip,.gz,在linux中,你要习惯没有.rar的日子。一下为tar,zip命令详解tar -zcvf /home/files.tar.gz /filestar -zcvf 打包后生成的文件名全路径 要打包的目录例子:把/files... -
Ubuntu下破暴力解压缩文件zip的密码
2018-04-20 10:06:50用Ubuntu下的frackzip工具破解zip的密码,注意此处只能破解zip的密码,对于rar、7z等类型的压缩文件暂时不支持破解。 步骤如下:1.右键Ubuntu桌面,打开终端2.在终端中输入sudoapt-get install fcrackzip的命令安装... -
java下载文件夹(其实是下载压缩文件zip)
2019-10-30 16:27:10} /** * 遍历需要压缩文件集合 * @param pathName * @throws IOException */ public void compress(String... pathName) throws IOException { ZipOutputStream out =null; FileOutputStream fileOutputStream=null... -
压缩文件zip怎么查看注释呢,市场上一些破软件不好用啊,我有秘诀
2019-12-10 18:20:56就是下方这个样子,包括360zip,winrar等,我就奇怪了,添加可以添加注释,为啥这个不可以看呢,也许我打开姿势不对 作为一名资深的IT人士,肯定就想着看看里头有啥密码,源码里头有没有自己想要的东西,果不其然... -
使用ant实现Zip文件压缩和解压缩Zip文件
2015-07-16 16:46:52java使用ant实现Zip文件压缩、解压缩Zip文件。 单个文件压缩成Zip文件,多个文件压缩成Zip文件。 使用ant实现大文件压缩。 -
将指定文件/文件夹压缩成zip、rar压缩文件
2015-09-29 15:05:32java将指定文件/文件夹压缩成zip、rar压缩文件 -
Python压缩解压zip文件
2018-06-28 11:37:09一、python压缩指定文件夹def zip_file(src_dir): zip_name = src_dir +'.zip' z = zipfile.ZipFile(zip_name,'w',zipfile.ZIP_DEFLATED) for dirpath, dirnames, filenames in os.walk(src_dir): fpath ... -
Java压缩和解压缩zip文件
2019-08-05 15:21:47介绍 Java提供的java.util.zip包只支持zip和gzip。至于更多格式的压缩可以选择apache的Commons Compress。 参考:...读取zip文件列表 package com.dylan.ja... -
Python压缩解压缩zip文件及破解zip文件密码的方法
2020-06-22 12:09:24这篇文章主要介绍了Python压缩解压缩zip文件及尝试破解zip文件密码的方法,给出了一个使用zipfile模块的简单示例,需要的朋友可以参考下 python 的 zipfile 提供了非常便捷的方法来压缩和解压 zip 文件。 例如,在py... -
java 将文件夹压缩为zip压缩文件
2018-01-06 21:12:02其实压缩文件并不是太难,在这里主要就是对IO流、ZIP的运用,挺有意思的一个案例。 现在对过程捋一下哈 首先,压缩文件要清楚需要用到的各种流,其次 要对文件夹和文件进行分类处理,在这里想对来说文件夹是 -
利用ziparchive压缩文件、zip_file解压文件
2018-08-02 10:44:47其实压缩文件就是创建一个通过某种压缩技术生成...而我们在压缩和解压缩的过程中难免少不了要处理含有中文名的文件,在压缩文件的时候我们不必为其烦忧,但是解压缩文件的时候,你或许会想到ziparchive类里的extract... -
c# 文件压缩zip或将zip文件解压
2018-01-18 22:07:40c# 文件压缩或解压 Zip格式 -
python 压缩文件为zip格式
2019-03-25 17:43:541.创建zip压缩对像 f=zipfile.ZipFile(file, mode="", compression=ZIP_STORED, allowZip64=...2.将文件写入zip压缩文件 f.write(filepath)将文件直接写入压缩文件 f.write(filepath,dstdir+filename)将文件打包... -
Linux zip压缩或者zip解压文件
2018-02-28 13:55:31tar -zcvf /home/xahot.tar.gz /xahottar -zcvf 打包后生成的文件名全...zip 压缩方法: 压缩当前的文件夹 zip -r ./xahot.zip ./* -r表示递归zip [参数] [打包后的文件名] [打包的目录路径]解压 unzip xahot.zip... -
PHP文件Zip压缩和解压缩
2018-02-02 13:19:31PHP文件 Zip 压缩 /* creates a compressed zip file */ 注意:开启PHP zip压缩扩展extension=php_zip.dll function create_zip($files=array(),$destination='' ,$overwrite=false) { //if the zip... -
Python压缩解压zip,Django下载zip文件
2019-09-05 20:07:53python压缩文件 使用zipfile import zipfile def convert_zip(zip_path, save_... # zip_path 要压缩文件的路径 # save_path 文件压缩后保存的路径 ''' local_path = os.path.join(zip_path, "x.xls") zip ... -
Java解压缩zip - 解压缩多个文件或文件夹
2012-09-19 12:56:50Java解压缩zip - 多个文件(包括文件夹) 对多个文件和文件夹进行压缩,对复杂的文件目录进行解压。 压缩方法使用的是可变参数,可以压缩1到多个文件..可以写数组的方式或者一个个写到参数列表里面... ZipFiles(zip... -
Linux文件文件夹的zip压缩和zip解压
2020-03-01 10:03:35将test文件夹压缩成test.zip ...将文件夹aaa和文件test.txt压缩成一个压缩包aaatest.zip zip -r aaatest.zip aaa test.txt 解压命令unzip与zip命令相反,在当前目录下直接解压test.zip unzip test.zip ... -
php 将文件压缩为zip文件
2013-09-10 16:28:51PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启 /* 说明: 将多个文件压缩成一个zip文件的函数 * @param $files 数组类型 * @param ... -
压缩zip文件和解压zip文件(设置压缩密码)
2020-03-20 14:19:02欢迎访问个人博客 德鲁大叔撸代码 说明:注意引入的依赖!!!! 否则一直报错 很不容易找到的错误!!! import net.lingala.zip4j.core.ZipFile;...一、压缩文件 @Test public void createZipFile(){ Stri... -
PHP ZipArchive 实现压缩解压Zip文件
2015-08-13 10:05:14PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,具体开启方法就不说了,不同的平台开启PHP扩增的方法网上都有,如有疑问欢迎交流。这里整理一下常用的... -
Android 压缩解压zip文件
2018-12-01 07:38:36对于zip压缩包内包含中文目录或者中文文件的话,参考网上的资源: “使用apache的zip工具包(所在包为ant.jar )代替JDK的zip工具包,因为java类型自带的不支持中文路径,不过两者使用的方式是一样的,只是apache压缩...