国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

如何用java給一個(gè)文件夾打成壓縮包?

這篇具有很好參考價(jià)值的文章主要介紹了如何用java給一個(gè)文件夾打成壓縮包?。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

public class Zip {

    public static void main(String[] args) {
        // 將要被壓縮的文件夾路徑  
        String folderPath = "D:\Logback\yiteng\ctnNO"; 
        
        // 壓縮后生成的壓縮文件路徑及文件名
        String zipFilePath = "D:\Logback\yiteng\ctnNO.zip";
        
        try {
            zipFolder(folderPath, zipFilePath);
            System.out.println("Zip file created successfully.");
        } catch (IOException e) {
            System.out.println("Error creating zip file: " + e.getMessage());
        }
    }

    /**
     * 打包壓縮文件夾
     *
     * @param folderPath 文件夾路徑
     * @param zipFilePath 壓縮后的文件路徑
     * @throws IOException IO異常
     */
    public static void zipFolder(String folderPath, String zipFilePath) throws IOException {
        FileOutputStream fos = null;
        ZipOutputStream zos = null;
        try {
            fos = new FileOutputStream(zipFilePath);
            zos = new ZipOutputStream(fos);
            
            // 遞歸遍歷整個(gè)文件夾并添加到壓縮包
            addFolderToZip("", new File(folderPath), zos);
        } finally {
            if (zos != null) {
                zos.close();
            }
            if (fos != null) {
                fos.close();
            }
        }
    }

    /**
     * 將文件夾及其中的文件遞歸添加到壓縮流中
     *
     * @param parentPath 父級(jí)路徑
     * @param folder 文件夾
     * @param zos Zip輸出流
     * @throws FileNotFoundException 文件未找到異常
     * @throws IOException IO異常
     */
    private static void addFolderToZip(String parentPath, File folder, ZipOutputStream zos) throws FileNotFoundException, IOException {
        for (File file : folder.listFiles()) {
            if (file.isDirectory()) {
                // 遞歸添加子文件夾中的文件
                addFolderToZip(parentPath + folder.getName() + "/", file, zos);
            } else {
                FileInputStream fis = null;
                try {
                    fis = new FileInputStream(file);
                    
                    // 新建Zip條目并將輸入流加入到Zip包中
                    ZipEntry zipEntry = new ZipEntry(parentPath + folder.getName() + "/" + file.getName());
                    zos.putNextEntry(zipEntry);
                    
                    byte[] bytes = new byte[1024];
                    int length;
                    while ((length = fis.read(bytes)) >= 0) {
                        zos.write(bytes, 0, length);
                    }
                } finally {
                    if (fis != null) {
                        fis.close();
                    }
                }
            }
        }
    }
}

上面的程序可以將 folderPath 指向的文件夾中所有文件和子文件夾打包成 zipFilePath 所指向的壓縮文件。您只需要將文件夾路徑和壓縮文件路徑替換為實(shí)際的值,然后在 Java 環(huán)境下運(yùn)行該程序即可。

請(qǐng)注意,上面的代碼塊中的 PackageName 是您自己所定義的包名。如果沒有將此類文件放在任何包名下,則可以將其忽略。文章來源地址http://www.zghlxwxcb.cn/news/detail-692847.html

到了這里,關(guān)于如何用java給一個(gè)文件夾打成壓縮包?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 簡(jiǎn)單的文件夾壓縮ZIP文件

    所用到的公共類 完結(jié)!撒花!

    2024年02月10日
    瀏覽(29)
  • Qt 實(shí)現(xiàn)壓縮文件、文件夾和解壓縮操作zip

    通過Qt自帶的庫來實(shí)現(xiàn),使用多線程方式,通過信號(hào)和槽來觸發(fā)壓縮與解壓縮,并將壓縮和解壓縮結(jié)果回傳過來。 使用的類: 1、在.pro文件中添加模塊gui-private 若未cmake工程,需要在CMakeList.txt中添加 待驗(yàn)證: 1、中文路徑,文件名含有中文 2、隱藏文件夾,.dir和…dir,例如:

    2024年02月14日
    瀏覽(31)
  • Zip壓縮文件夾 + 前端導(dǎo)出

    2024年03月21日
    瀏覽(24)
  • [python]批量解壓文件夾下所有壓縮包(rar、zip、7z)

    [python]批量解壓文件夾下所有壓縮包(rar、zip、7z)

    ????????在文件夾作用包含許多壓縮包的時(shí)候,解壓起來就很費(fèi)時(shí)費(fèi)力,尤其是在文件夾還存在嵌套的情況下,解壓起來就更麻煩了。Franpper今天給大家?guī)磉f歸遍歷指定路徑下的所有文件和文件夾,批量解壓所有壓縮包的方法,幫大家一鍵解壓。 ? ? ? ? 常見的壓縮包格

    2024年02月09日
    瀏覽(29)
  • php壓縮一個(gè)文件夾,php下載多個(gè)圖片

    php壓縮一個(gè)文件夾,php下載多個(gè)圖片

    把 100/ 這個(gè)文件夾,壓縮成 一百.zip 然后得到zip所在的下載url 這個(gè)功能,需要PHP去掉禁用函數(shù) shell_exec ?

    2024年02月11日
    瀏覽(30)
  • 如何用GitKeep提交和推送一個(gè)空目錄或文件夾

    如何用GitKeep提交和推送一個(gè)空目錄或文件夾

    目錄 .Gitkeep簡(jiǎn)介 .Gitkeep是什么 如何用GitKeep提交和推送一個(gè)空目錄或文件夾 結(jié)論 相關(guān)參考 ?? Git是一個(gè)開發(fā)工具,幫助團(tuán)隊(duì)管理他們的源代碼并有效地處理項(xiàng)目。通過GitHub或其他托管服務(wù)上傳時(shí),不可能包括空白/空目錄。這是有問題的。Git提供了一個(gè)”.gitkeep “文件來解決

    2024年02月04日
    瀏覽(26)
  • java~將多個(gè)輸出流壓縮成一個(gè)zip文件

    hutool工具包可以幫我們完成這件事,幾行代碼可以實(shí)現(xiàn),我們提供兩種方式,壓縮本地文件和壓縮內(nèi)存流。 擴(kuò)展閱讀:如果希望進(jìn)行模版技術(shù),可以看一下org.apache.velocity.tools:velocity-tools-generic包,可直接引用依賴 *版本 引用依賴 org.apache.velocity 是 Apache Velocity 模板引擎的 Ja

    2024年02月05日
    瀏覽(25)
  • vue3導(dǎo)入文件夾、導(dǎo)入文件、導(dǎo)出zip、導(dǎo)出

    記錄一下之前項(xiàng)目用到的 導(dǎo)入文件夾 和 導(dǎo)入文件 出現(xiàn)的一些注意的點(diǎn),直接上代碼 注意:在傳相同的文件時(shí),會(huì)發(fā)現(xiàn)無法觸發(fā)change事件?? ?前端導(dǎo)出zip壓縮包 我就用了最原始的方法axios 導(dǎo)出zip? ?因?yàn)橹耙矝]有這樣的需求 遇到過一個(gè)小問題就是,我的項(xiàng)目在config.js中判

    2024年02月20日
    瀏覽(23)
  • java(ZipOutputStream)將多個(gè)文件打成zip

    當(dāng)想要將兩個(gè)文件打包成ZIP文件時(shí),可以使用Java的ZipOutputStream類。 ZipOutputStream 是Java中用于創(chuàng)建ZIP文件的類,它是 java.util.zip 包中的一部分。通過使用 ZipOutputStream ,可以將多個(gè)文件壓縮到一個(gè)ZIP文件中。 以下是 ZipOutputStream 的一些主要特性和方法: 創(chuàng)建ZIP文件 : ZipOutput

    2024年02月09日
    瀏覽(23)
  • java 批量下載將多個(gè)文件(minio中存儲(chǔ))壓縮成一個(gè)zip包

    java 批量下載將多個(gè)文件(minio中存儲(chǔ))壓縮成一個(gè)zip包

    我的需求是將minio中存儲(chǔ)的文件按照查詢條件查詢出來統(tǒng)一壓成一個(gè)zip包然后下載下來。 思路:針對(duì)這個(gè)需求,其實(shí)可以有多個(gè)思路,不過也大同小異,一般都是后端返回流文件前端再處理下載,也有少數(shù)是壓縮成zip包之后直接給下載鏈接返回到前端,前端收到鏈接url直接

    2024年02月10日
    瀏覽(64)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包