导航:首页 > 编程语言 > javautilzip

javautilzip

发布时间:2022-07-06 17:44:55

java.util.zip最好在什么软件里运行

比如记事本、editpluse、notepad++ 这些写完需要手动编译

eclipse、netbeans 自动编译

Ⅱ java.util.zip.ZipEntry里面 ZipEntry.isDirectory() 是什么意思

一个zip文件中有若干个文件和若干个文件夹
所以我们需要判断,这个zip文件中包含的是文件还是文件夹
如:一个压缩文件myZip.zip 中有 myText.txt(文本文件),myFile(文件夹)
那么
ZipEntry.isDirectory() 是用来判断myZip.zip中某一个选项是文件还是文件夹!

Ⅲ java.util.zip

java.util.zip用的默认UTF-编辑,你得字证你的zip中只有英文,这样才不会出错.

如果有中文或其它什么的,就要要换包了.

你放在zip文件中的文件,相对路径是这样
/folder/folder/xxx.xml

java.util.zip.ZipFile zfile = new java.util.zip.ZipFile(zip路径);
java.util.zip.ZipEntry entry = new java.util.zip.ZipEntry ("/folder/folder/xxx.xml
");
InputStream stream = zfile.getInputStream(entry);

这样你就能取得文件流

Ⅳ 使用java.util.zip.ZipFile,压缩包内文件数量过多则报错问题.

import org.apache.commons.io.IOUtils;

/**
使用apache 的 IOUtils 能解决

**/

File zip = new File("");// 你的文件
FileInputStream fin = new FileInputStream(zip);
ZipInputStream zin = new ZipInputStream(fin);
ZipEntry ze = null;
while ((ze = zin.getNextEntry()) != null) {
FileOutputStream fout = new FileOutputStream(new File("",
ze.getName()));
IOUtils.(zin, fout);
IOUtils.closeQuietly(fout);
zin.closeEntry();
}
IOUtils.closeQuietly(zin);

嗯。还有其他的方法你可以看一下。 IOUtils 的方法。

Ⅳ java.util.zip.ZipException这个问题怎么解决

引入的jar包不对,或者你的压缩文件不标准。

一般就会报这个错误。

Ⅵ 如何解决java.util.zip.ZipException

ZipException 其实就是zip包解压错误 为什么会在java项目中出现呢 因为jar包其实就等同于zip包 ,出现这个异常也就是项目下载jar包时 没有下载完整 导致解压jar异常 。so 你需要maven update 或者 install -U 更新下jar包 ,或者直接把仓库中异常jar给删除 重新下载

Ⅶ 怎样用Java生成ZIP文件

import java.io.BufferedOutputStream;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;


import org.apache.tools.zip.ZipEntry;

import org.apache.tools.zip.ZipOutputStream;


/**

* @project: Test

* @author chenssy

* @date 2013-7-28

* @Description: 文件压缩工具类

* 将指定文件/文件夹压缩成zip、rar压缩文件

*/

public class CompressedFileUtil {

/**

* 默认构造函数

*/

public CompressedFileUtil(){

}


/**

* @desc 将源文件/文件夹生成指定格式的压缩文件,格式zip

* @param resourePath 源文件/文件夹

* @param targetPath 目的压缩文件保存路径

* @return void

* @throws Exception

*/

public void compressedFile(String resourcesPath,String targetPath) throws Exception{

File resourcesFile = new File(resourcesPath); //源文件

File targetFile = new File(targetPath); //目的

//如果目的路径不存在,则新建

if(!targetFile.exists()){

targetFile.mkdirs();

}

String targetName = resourcesFile.getName()+".zip"; //目的压缩文件名

FileOutputStream outputStream = new FileOutputStream(targetPath+"\"+targetName);

ZipOutputStream out = new ZipOutputStream(new BufferedOutputStream(outputStream));

createCompressedFile(out, resourcesFile, "");

out.close();

}

/**

* @desc 生成压缩文件。

* 如果是文件夹,则使用递归,进行文件遍历、压缩

* 如果是文件,直接压缩

* @param out 输出流

* @param file 目标文件

* @return void

* @throws Exception

*/

public void createCompressedFile(ZipOutputStream out,File file,String dir) throws Exception{

//如果当前的是文件夹,则进行进一步处理

if(file.isDirectory()){

//得到文件列表信息

File[] files = file.listFiles();

//将文件夹添加到下一级打包目录

out.putNextEntry(new ZipEntry(dir+"/"));

dir = dir.length() == 0 ? "" : dir +"/";

//循环将文件夹中的文件打包

for(int i = 0 ; i < files.length ; i++){

createCompressedFile(out, files[i], dir + files[i].getName()); //递归处理

}

}

else{ //当前的是文件,打包处理

//文件输入流

FileInputStream fis = new FileInputStream(file);

out.putNextEntry(new ZipEntry(dir));

//进行写操作

int j = 0;

byte[] buffer = new byte[1024];

while((j = fis.read(buffer)) > 0){

out.write(buffer,0,j);

}

//关闭输入流

fis.close();

}

}

public static void main(String[] args){

CompressedFileUtil compressedFileUtil = new CompressedFileUtil();

try {

compressedFileUtil.compressedFile("G:\zip", "F:\zip");

System.out.println("压缩文件已经生成...");

} catch (Exception e) {

System.out.println("压缩文件生成失败...");

e.printStackTrace();

}

}

}

运行程序结果如下:

如果是使用java.util下的java.util.zip进行打包处理,可能会出现中文乱码问题,这是因为java的zip方法不支持编码格式的更改,我们可以使用ant.java下的zip工具类来进行打包处理。所以需要将ant.jar导入项目的lib目录下。

Ⅷ java.util.Zip压缩不了空目录么

zip中不能含空目录吧 ,遇到空目录时,创建一个空子文件,可以解决
比如创建 dir1\empty.txt 0 byte
就能创建dir1

阅读全文

与javautilzip相关的资料

热点内容
自己购买云主服务器推荐 浏览:422
个人所得税java 浏览:761
多余的服务器滑道还有什么用 浏览:192
pdf劈开合并 浏览:28
不能修改的pdf 浏览:752
同城公众源码 浏览:489
一个服务器2个端口怎么映射 浏览:298
java字符串ascii码 浏览:79
台湾云服务器怎么租服务器 浏览:475
旅游手机网站源码 浏览:332
android关联表 浏览:946
安卓导航无声音怎么维修 浏览:333
app怎么装视频 浏览:431
安卓系统下的软件怎么移到桌面 浏览:96
windows拷贝到linux 浏览:772
mdr软件解压和别人不一样 浏览:904
单片机串行通信有什么好处 浏览:340
游戏开发程序员书籍 浏览:860
pdf中图片修改 浏览:288
汇编编译后 浏览:491