中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java中怎么利用7zip對壓縮包進行解壓的

發布時間:2020-12-07 16:17:56 來源:億速云 閱讀:163 作者:Leah 欄目:編程語言

java中怎么利用7zip對壓縮包進行解壓的?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

7zip命令行

7z <command> [<switches>...] <archive_name> [<file_names>...][<@listfiles...>]

7z的commands中包含添加文件到壓縮包、從壓縮包中刪除文件以及提取文件等等多個命令,在這里我就不多贅述,有興趣的可以在7zip的安裝目錄使用cmd運行7z.exe查看具體的命令。

今天我們要做的就是使用密碼將壓縮包中的文件提取出來,具體的命令如下:

7z x 壓縮文件源路徑 -o要解壓的路徑 -aoa -bse1 -p密碼

&#8226; x : 表示從壓縮包中提取文件

&#8226; -aoa : ao表示覆蓋模式,最后的a表示直接覆蓋現有文件而不需要任何提示

&#8226; -bs < o|e|p > < 0|1|2 >:set output stream for output/error/progress line

-bs命令其實我沒有太明白,字面的意思大概是說為輸出/錯誤/進程行設置輸出流,如果不設置-bse1屬性,當解壓縮出現錯誤,例如文件找不到時,錯誤提示就會出現在cmd窗口中而不是生成的log文件中,因此必須加上-bse1命令

java通過cmd調用7zip解壓

String filePath = "F:\\test\\新建 文本 文檔.rar";
//將文件名稱中的所有空格都替換為帶有雙引號的空格
filePath = filePath.replaceAll(" ", "\" \""); 

String command = "cmd /c start /B D:/工具/7zip/7-Zip/7z.exe x "+filePath+" -oF:/test/ -aoa -bse1 -p123 >F:/test/1.txt";
System.out.println(command);
Runtime.getRuntime().exec(command);

cmd命令解釋

&#8226; cmd /c start 7z.exe 表示會啟動7z來執行后面的命令,7z啟動以后原來的cmd窗口會關閉

&#8226; cmd /k start 7z.exe 表示會啟動7z來執行后面的命令,7z啟動以后原來的cmd窗口不會關閉

&#8226; /B 表示啟動應用程序,但是并不創建新的窗口

通過以上的代碼就可以解壓完成壓縮包文件,如果要知道解壓的密碼是否正確或者壓縮包是否損壞等信息,可以通過獲取生成txt日志文件的內容來得知,這個不在本篇范圍之后,后續再說。

遇到的問題

7z.exe文件路徑找不到

出現該問題是由于7zip的安裝路徑中存在空格

解決方案:

&#8226; 選擇7zip安裝路徑,不要安裝在有空格的路徑中

&#8226; 將路徑中的空格使用雙引號引起來,如C:“Program Files”\7-Zip或者“C:\Program Files\7-Zip”或者C:\Program“ ”Files\7-Zip

文件路徑中存在連續多個空格導致文件找不到

出現該問題是由于

Runtime.getRuntime().exec(command)

方法在執行過程中,會將文件路徑中的多個連續空格轉換為單個空格,這種情況在文件全路徑外面加上雙引號也是不管用的

解決方案:

替換文件路徑中的空格,將每一個空格都替換為帶有雙引號的空格即可

關于java中怎么利用7zip對壓縮包進行解壓的問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

天镇县| 凌云县| 紫金县| 金塔县| 长乐市| 绍兴市| 佛冈县| 永平县| 隆昌县| 汝州市| 赞皇县| 营口市| 吴旗县| 县级市| 九龙县| 高淳县| 江达县| 稷山县| 德格县| 平泉县| 宁德市| 丹巴县| 喀什市| 海兴县| 福清市| 大埔县| 田阳县| 阳东县| 灌阳县| 永州市| 桂东县| 耒阳市| 福鼎市| 文水县| 涿鹿县| 阿瓦提县| 永春县| 洞头县| 平陆县| 健康| 聂荣县|