導航:首頁 > 編程語言 > 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相關的資料

熱點內容
自己購買雲主伺服器推薦 瀏覽:419
個人所得稅java 瀏覽:760
多餘的伺服器滑道還有什麼用 瀏覽:189
pdf劈開合並 瀏覽:26
不能修改的pdf 瀏覽:750
同城公眾源碼 瀏覽:488
一個伺服器2個埠怎麼映射 瀏覽:297
java字元串ascii碼 瀏覽:78
台灣雲伺服器怎麼租伺服器 瀏覽:475
旅遊手機網站源碼 瀏覽:332
android關聯表 瀏覽:945
安卓導航無聲音怎麼維修 瀏覽:332
app怎麼裝視頻 瀏覽:430
安卓系統下的軟體怎麼移到桌面 瀏覽:96
windows拷貝到linux 瀏覽:772
mdr軟體解壓和別人不一樣 瀏覽:904
單片機串列通信有什麼好處 瀏覽:340
游戲開發程序員書籍 瀏覽:860
pdf中圖片修改 瀏覽:288
匯編編譯後 瀏覽:491