97色伦色在线综合视频,无玛专区,18videosex性欧美黑色,日韩黄色电影免费在线观看,国产精品伦理一区二区三区,在线视频欧美日韩,亚洲欧美在线中文字幕不卡

傳奇手游網(wǎng)站win7 iis新建網(wǎng)站

鶴壁市浩天電氣有限公司 2026/01/22 09:00:48
傳奇手游網(wǎng)站,win7 iis新建網(wǎng)站,創(chuàng)意logo設計生成器,做網(wǎng)絡傳銷網(wǎng)站犯罪嗎java使用net.lingala.zip4j導出壓縮包文件一、先確認依賴#xff08;Maven/Gradle#xff09;二、完整實現(xiàn)代碼三、zip4j 1.x 核心配置說明#xff08;區(qū)別于2.x#xff09;四、關(guān)鍵問題解決1. AES-256 加密權(quán)限問題#xff08;JDK8及以下#xff09;2. 中文文件名亂碼3.…java使用net.lingala.zip4j導出壓縮包文件一、先確認依賴Maven/Gradle二、完整實現(xiàn)代碼三、zip4j 1.x 核心配置說明區(qū)別于2.x四、關(guān)鍵問題解決1. AES-256 加密權(quán)限問題JDK8及以下2. 中文文件名亂碼3. 文件夾刪除失敗4. 壓縮包覆蓋問題五、使用注意以下是基于 zip4j 1.x 版本實現(xiàn)「加密壓縮指定文件夾 壓縮后刪除原文件夾」的完整代碼兼容舊版依賴同時解決加密、中文亂碼、文件夾刪除等核心問題一、先確認依賴Maven/Gradlezip4j 1.x 最新穩(wěn)定版為1.3.2需在pom.xml中引入!-- zip4j 1.x 依賴對應 core.ZipFile --dependencygroupIdnet.lingala.zip4j/groupIdartifactIdzip4j/artifactIdversion1.3.2/version/dependency二、完整實現(xiàn)代碼importnet.lingala.zip4j.core.ZipFile;importnet.lingala.zip4j.exception.ZipException;importnet.lingala.zip4j.model.ZipParameters;importnet.lingala.zip4j.util.Zip4jConstants;importjava.io.File;importjava.util.Arrays;/** * 基于 zip4j 1.xcore.ZipFile實現(xiàn)加密壓縮文件夾并刪除原文件夾 */publicclassZipEncryptUtil1x{/** * 加密壓縮指定文件夾 * param sourceDirPath 待壓縮文件夾路徑如 D: estsource * param zipFilePath 壓縮包保存路徑如 D: estsource_encrypt.zip * param password 壓縮包加密密碼 * throws ZipException 壓縮相關(guān)異常 */publicstaticvoidencryptCompressDir(StringsourceDirPath,StringzipFilePath,Stringpassword)throwsZipException{// 1. 校驗源文件夾合法性FilesourceDirnewFile(sourceDirPath);if(!sourceDir.exists()||!sourceDir.isDirectory()){thrownewIllegalArgumentException(源文件夾不存在或非合法目錄sourceDirPath);}// 2. 初始化壓縮參數(shù)加密壓縮配置ZipParameterszipParamsnewZipParameters();// 壓縮算法DEFLATE平衡壓縮率和速度STORE 為無壓縮僅打包zipParams.setCompressionMethod(Zip4jConstants.COMP_DEFLATE);// 壓縮級別0(最快)~9(最高壓縮率)5為默認平衡值zipParams.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL);// 開啟加密zipParams.setEncryptFiles(true);// 加密方式AES-256推薦比ZIP2.0更安全zipParams.setEncryptionMethod(Zip4jConstants.ENC_METHOD_AES);// AES密鑰強度256位需JDK支持無限制加密策略zipParams.setAesKeyStrength(Zip4jConstants.AES_STRENGTH_256);// 設置壓縮包密碼zipParams.setPassword(password.toCharArray());// 解決中文文件名亂碼1.x 版本需手動指定字符集zipParams.setFileNameCharset(UTF-8);// 3. 創(chuàng)建壓縮包并添加整個文件夾保留目錄結(jié)構(gòu)ZipFilezipFilenewZipFile(zipFilePath);// 添加文件夾到壓縮包自動遞歸包含所有子文件/子目錄zipFile.addFolder(sourceDir,zipParams);System.out.println(加密壓縮完成壓縮包路徑zipFilePath);// 4. 壓縮完成后刪除原文件夾遞歸刪除booleandeleteSuccessdeleteDirectory(sourceDir);if(deleteSuccess){System.out.println(原文件夾已刪除sourceDirPath);}else{System.err.println(原文件夾刪除失敗可能文件被占用sourceDirPath);}}/** * 遞歸刪除文件夾包含所有子文件/子目錄 * param dir 待刪除的文件夾 * return 是否刪除成功 */privatestaticbooleandeleteDirectory(Filedir){if(dir.isDirectory()){File[]childrendir.listFiles();// 空文件夾直接刪除if(childrennull||children.length0){returndir.delete();}// 遞歸刪除所有子文件/子目錄for(Filechild:children){booleansuccesschild.isDirectory()?deleteDirectory(child):child.delete();if(!success){returnfalse;}}}// 最后刪除空文件夾returndir.delete();}// 測試示例publicstaticvoidmain(String[]args){try{// 待壓縮文件夾路徑StringsourceDirD:\test\myFolder;// 加密壓縮包保存路徑StringzipFileD:\test\myFolder_encrypt.zip;// 壓縮包密碼建議包含大小寫數(shù)字特殊字符StringpasswordZip4j123456;// 執(zhí)行加密壓縮刪除原文件夾encryptCompressDir(sourceDir,zipFile,password);}catch(Exceptione){e.printStackTrace();System.err.println(操作失敗e.getMessage());}}}三、zip4j 1.x 核心配置說明區(qū)別于2.x配置項1.x 常量值說明壓縮算法COMP_DEFLATE/COMP_STOREDEFLATE有壓縮、STORE無壓縮壓縮級別DEFLATE_LEVEL_0~DEFLATE_LEVEL_90最快9壓縮率最高NORMAL5默認加密方式ENC_METHOD_AES/ENC_METHOD_STANDARDAES安全、ZIP2.0弱加密不推薦AES密鑰強度AES_STRENGTH_128/256256位需JDK解鎖無限制加密策略JDK8及以下需替換JCE文件四、關(guān)鍵問題解決1. AES-256 加密權(quán)限問題JDK8及以下若運行時報ZipException: Invalid AES Key Strength需替換 JDK 加密策略文件下載「JCE 無限制強度管轄權(quán)策略文件」Oracle 官網(wǎng)替換路徑JDK_HOME/jre/lib/security下的local_policy.jar和US_export_policy.jarJDK9 已默認支持無需替換。2. 中文文件名亂碼1.x 版本需手動設置字符集zipParams.setFileNameCharset(UTF-8)否則壓縮包內(nèi)中文文件名會變成亂碼。3. 文件夾刪除失敗原因文件夾內(nèi)文件被其他程序占用、權(quán)限不足解決// 刪除前增加權(quán)限設置重試邏輯privatestaticbooleandeleteDirectory(Filedir){if(dir.isDirectory()){File[]childrendir.listFiles();if(children!null){for(Filechild:children){// 賦予文件可寫權(quán)限child.setWritable(true);booleansuccessdeleteDirectory(child);if(!success){// 重試刪除休眠500mstry{Thread.sleep(500);successchild.delete();}catch(InterruptedExceptione){Thread.currentThread().interrupt();}if(!success)returnfalse;}}}}dir.setWritable(true);returndir.delete();}4. 壓縮包覆蓋問題若目標壓縮包已存在1.x 版本會默認追加文件如需覆蓋需先刪除已有壓縮包FileexistingZipnewFile(zipFilePath);if(existingZip.exists()){if(!existingZip.delete()){thrownewZipException(已有壓縮包無法刪除無法覆蓋zipFilePath);}}// 再創(chuàng)建新壓縮包ZipFilezipFilenewZipFile(zipFilePath);五、使用注意壓縮包密碼建議設置復雜密碼大小寫數(shù)字特殊字符避免被暴力破解生產(chǎn)環(huán)境中建議增加「壓縮成功校驗」檢查壓縮包大小、完整性再刪除原文件夾若需壓縮指定類型文件如僅壓縮.txt可通過FileFilter過濾// 僅添加txt文件zipFile.addFolder(sourceDir,zipParams,file-file.getName().endsWith(.txt));該代碼基于 zip4j 1.x 版本core.ZipFile實現(xiàn)兼容舊項目依賴可直接集成使用核心邏輯清晰同時處理了加密、亂碼、刪除失敗等常見問題。
版權(quán)聲明: 本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請聯(lián)系我們進行投訴反饋,一經(jīng)查實,立即刪除!

長沙網(wǎng)站推廣運營網(wǎng)站后臺用什么瀏覽器

長沙網(wǎng)站推廣運營,網(wǎng)站后臺用什么瀏覽器,玉環(huán)縣企業(yè)網(wǎng)站建設,廣州軟件開發(fā)公司排名基于GPT-SoVITS的跨語言語音合成實踐全記錄 在內(nèi)容創(chuàng)作日益?zhèn)€性化的今天#xff0c;越來越多的視頻博主、教育工作

2026/01/21 16:56:01

怎么修改網(wǎng)站信息wordpress獲取本文地址和標題

怎么修改網(wǎng)站信息,wordpress獲取本文地址和標題,百度關(guān)鍵詞優(yōu)化快速排名軟件,wordpress+改郵箱Linly-Talker數(shù)字人系統(tǒng)實戰(zhàn)#xff1a;如何用一張照片生成口型同步講解視頻 在

2026/01/21 18:55:01

網(wǎng)站開發(fā)的階段網(wǎng)站關(guān)鍵詞都沒有了

網(wǎng)站開發(fā)的階段,網(wǎng)站關(guān)鍵詞都沒有了,超級網(wǎng)站模板下載,做詳情頁的網(wǎng)站歐姆龍SCU模塊實現(xiàn)Modbus RTU與無協(xié)議通信 在現(xiàn)代工業(yè)自動化系統(tǒng)中#xff0c;PLC 與各類智能設備的串行通信需求日益復

2026/01/21 15:33:01