① 請問這倆個什麼區別
7z 是一種主流高效的壓縮格式,它擁有極高的壓縮比。在計算機科學中,7z是一種可以使用多種壓縮演算法進行數據壓縮的檔案格式。該格式最初被7-Zip實現並採用,但是這種檔案格式是公有的,並且7-Zip軟體本身亦在GNU寬通用公共許可證 (GNU LGPL)協議下開放源代碼。目前LZMA軟體開發工具包的最新版本為v9.20。7z格式的MIME類型為application/x-7z-compressed.7-Zip預設的格式是其自行開發的7z格式,副檔名為xxx.7z。7z格式包含多種演算法,最常使用的就是Bzip2以及作者Igor Pavlov開發的LZMA。LZMA演算法比起其他常見的傳統壓縮演算法,如Zip、RAR來說相對較新,壓縮率也比較高。7z格式原生的使用Unicode來儲存檔案名稱,可以避免不同系統間壓縮解壓亂碼的問題。通常使用 7-Zip 的 7z 格式能比使用 zip 格式的壓縮文件小 30-70%。並且使用 7-Zip 創建的 zip 格式比大多數其它壓縮軟體創建的都小 2-10%。●開源且模塊化的組件結構(允許使用任何壓縮,轉換或加密演算法)●最高的壓縮比7-Zip7-Zip●強大的 AES-256 加密●可更改和配置壓縮的演算法●支持超大文件(最大支持到16EB)●Unicode文件名支持●支持固實壓縮,容許內類的檔案在用一個串流中壓縮,使類似的內容被有效的壓縮●支持檔案的文件頭壓縮●支援多線程壓縮7z格式支持256位鍵鑰AES演算法加密。鍵鑰則由用戶提供的暗碼進行SHA-256hash演算法得到(使用大量迭代以使得對暗碼的暴力解碼更加困難)
ZIP,是一個計算機文件的壓縮的演算法,原名Deflate(真空),發明者為菲爾·卡茨(Phil Katz)),他於1989年1月公布了該格式的資料。ZIP通常使用後綴名「.zip」,它的MIME格式為 application/zip 。目前,ZIP格式屬於幾種主流的壓縮格式之一,其競爭者包括RAR格式以及開放源碼的7-Zip格式。從性能上比較,RAR格式較ZIP格式壓縮率較高,而7-Zip由於提供了免費的壓縮工具而逐漸在更多的領域得到應用。WinMount可以把ZIP掛載到虛擬盤,無需解壓,隨即讀取,這又是另一大創新。
② 用lzma演算法進行文件的加密和解密,會的進....
這種演算法不可能有源碼給你的,要掌握其中的原理思想,自己編代碼
③ 關於LZMA壓縮演算法的用法,怎樣集成到應用程序中
string[] arm = { "e", "D: \\temp\\log.rtf", "D: \\temp\\log.7z"};
// string[] arm = { "b", "D: \\temp\\lo.7z", "D: \\temp\\log_2232.txt",}; //, -d21, -fb32, -mfbt4
LzmaAlone.Main1(arm);
④ lzmaDecode 是什麼演算法
LZMA,(Lempel-Ziv-Markov chain-Algorithm的縮寫),是一個Deflate和LZ77演算法改良和優化後的壓縮演算法,開發者是Igor Pavlov,2001年被首次應用於7-Zip壓縮工具中,是 2001年以來得到發展的一個數據壓縮演算法。它使用類似於 LZ77 的字典編碼機制,在一般的情況下壓縮率比 bzip2 為高,用於壓縮的可變字典最大小可達4GB.
C++ 語言寫成的的 LZMA 開放源碼壓縮庫使用了區間編碼支持的 LZ77 改進壓縮演算法以及特殊的用於二進制的預處理程序。
數據流、重復序列大小以及重續序列位置單獨進行了壓縮。
LZMA 支持幾種散列鏈變體、二叉樹以及基數樹作為它的字典查找演算法基礎。
BCJ / BCJ2
BCJ / BCJ2 壓縮工具所附帶的 LZMA SDK 包括:在 X86、ARM、PowerPC、IA-64 以及 ARM Thumb 處理器上在壓縮之前跳轉目標進行歸一化處理。對於 x86 平台來說,這是一個近跳轉、近調用以及近條件跳轉需要從「向後跳 1665 位元組」這樣的機器語言歸一化到「跳轉到 5554」這樣的格式,但是短跳轉及短條件跳轉不需要進行這樣的處理。
7-Zip
盡管 7-Zip BCJ2 使用 32 位的偏移地址,但是 UPX 這樣的可執行文件壓縮工具當檢測到 16 位 DOS 二進制文件格式的時候仍然可以使用 16 位的數值。RAR 壓縮工具對 32 位的 x86 可執行文件以及 IA64 Itanium 可執行文件進行偏移地址壓縮。
BCJ / BCJ2 二進制文件壓縮
BCJ 與 BCJ2 之間的區別在於前者只將近跳轉及近調用目標地址轉換到歸一化的形式,而 BCJ2 只將 x86 平台下的近跳轉、近調用及條件近跳轉目標分別進行壓縮。
7-Zip 實現
在GNU LGPL通用公共許可證下發布的7-zip中使用的LZMA有以下幾個特點:
* 高壓縮比;
* 解壓縮程式碼較小:約 5 KB;
* 解壓縮時僅需少量內存 (取決於字典大小);
* 可變更字典大小 (最大 4 GB);
* 壓縮速度:在一部2GHz的處理器上運行,約可達到1MB每秒的速度;
* 解壓縮速度:在一部2GHz的處理器上運行,約可達10-20MB每秒的速度;
* 支援多線程、多核心(多處理器)和Pentium 4處理器的超線程(Hyper-Threading);
這個特點使得這個這個演算法的解壓過程非常適合於嵌入式系統應用的場合。
可移植性
一些微軟Windows專有的特性深深嵌入在源程序中,這樣就很難生成一個與 Unix 兼容的版本。但是,已經有兩個移植到類 Unix 平台的版本:
* p7zip 是一個或多或少地完全將 7z 及 7za 移植到 POSIX 的 7-zip 版本,這些系統包括 Linux、Solaris、OpenBSD、FreeBSD、Cygwin 等 Unix 系統以及 Mac OS X 和 BeOS等。
* LZMA Unix Port 是一個只移植了 LZMA 中代碼的版本,它是一個類似於 gzip 的基於數據流的壓縮工具。它不是一個歸檔工具,而只是一個普通的壓縮工具,並且由於它在沒有數據頭中沒有未壓縮文件大小的 UInt64 變數,所以它與 7-zip 生成的 LZMA 數據流中不同。7-zip 使用一種更加靈活的歸檔格式 7z,因此二者都不能互相使用對方生成的數據,至少在目前是這樣。
應用
使用或者支持 LZMA 的軟體有:
* Nullsoft Scriptable Install System
* Inno Setup
* cramfs and SquashFS, with applied patches
* lrzip ("long range zip", or "LZMA rzip")
* PyLZMA,Igor Pavlov 的 LZMA SDK 的 Python 語言介面
* FreeArc, 歸檔工具及 LZMA SDK 的 Haskell 語言介面
* 用於 Pascal 語言的 LZMA SDK
⑤ 介紹幾種壓縮演算法並做對比
首先說:這是我自己寫的,我拒絕抄別人的。
我很喜歡壓縮,7z是一個不錯的壓縮軟體。
首先說說7z後綴格式的這些東西,有LZMA LZMA2 PPMd BZIP2比你要知道的還多了一個。
首先說LZMA,很不錯,他對壓縮文件很優秀。建議使用。
PPMd,他的壓縮率並不高,但是他壓縮文檔可超出了LZMA,文檔指的是記事本一類文字保存文件。
BZIP2,他,沒有前面那兩位功能強大,但是32位和64位系統都兼容。
忘了說LZMA2了,他,真讓我失望。假如你的CPU是4核的,那麼你用4線程壓縮就會快一倍,但是那時你的CPU佔用率就達100%了
說完了
⑥ 7zip的lzma和lzma2演算法在什麼情況下壓縮率不一樣
7Z的壓縮率是高於RAR,但在速度方面不及RAR。
7-Zip壓縮率優勢
1.使用了 LZMA 與 LZMA2 演算法的 7z 格式 擁有極高的壓縮比。
2.為 7z 與 ZIP 提供更完善的 AES-256加密演算法。
3.支持 FAR Manager插件
很多朋友在使用WinRAR進行文件壓縮時,常發現只能達到百分之幾的壓縮率,跟沒壓縮差不了多少。其實只要對WinRAR多做一些設置,就能得到最大限度的壓縮率了。
⑦ 不計壓縮時間和解壓時間的代價,怎樣選擇參數能使7z的壓縮效果最好、壓縮比最大
那要看你壓縮什麼文件的。。不同的壓縮演算法對應不同的文件壓縮效果是有高有低的 一般我用的是lzma演算法【這個演算法對多格式文件的壓縮效果比較好】和7Z格式的 因為7Z的壓縮率高一點,也比sfx格式通用
字典的大小適合壓縮和解壓時的內存有關
較大的字典文件能提供較高的壓縮比。但是在壓縮和解壓縮的時候會比較慢而且需要較多的物理內存。
LZMA 壓縮演算法在壓縮時,所需的內存(RAM)大約為字典大小的十倍。LZMA 壓縮演算法在解壓縮時,所需的內存(RAM)接近於字典大小。PPMd 壓縮演算法在壓縮及解壓縮時,所需的內存(RAM)與字典大小基本相等。
單詞大小:指定單詞的長度,將使用用戶自定義的相同位元組排列順序來進行壓縮。
LZMA 及 Deflate這兩個演算法下單詞大小對壓縮率的影響很小,同時會減小時間。。。單詞大小設置在這兩個演算法下對多個文件壓縮率的提高比單個文件的影響高 。
而對 PPMd 壓縮演算法影響很大,它直接應響到壓縮比、壓縮及解壓縮的速度。
solid block size【固實數據大小】:這個是把壓縮檔案中的所有文件都當成一個連續數據流來看待,這個越大,壓縮率越高。特別是在添加大量小文件的時候 而對單個大文件影響不大
還有在選擇固實模式下,你是不能對壓縮文件夾里的文件直接修改的,而在其他選項中是可以修改的
⑧ 7z文件用什麼打開
7z文件是一種主流的壓縮文件,可以使用7-zip、WinZip、好壓、快壓等解壓軟體打開,其中7-zip是7z文件的官方工具。
7-zip的官網地址是www.7-zip.org,可以在上面下載到7-zip。
7z 是一種主流高效的壓縮格式,它擁有極高的壓縮比。在計算機科學中,7z是一種可以使用多種壓縮演算法進行數據壓縮的檔案格式。該格式最初被7-Zip實現並採用,但是這種檔案格式是公有的,並且7-Zip軟體本身亦在GNU寬通用公共許可證 (GNU LGPL)協議下開放源代碼。
7z格式的MIME類型為application/x-7z-compressed。通常使用 7-Zip 的 7z 格式能比使用 zip 格式的壓縮文件小 30-70%。並且使用 7-Zip 創建的 zip 格式比大多數其它壓縮軟體創建的都小 2-10%。
(8)LZma演算法詳細擴展閱讀:
7z文件所使用壓縮演算法:
LZMA演算法是7z格式的默認演算法。LZMA演算法具有以下主要特徵:
1、高壓縮比
2、可變字典大小(最大 4 GB)
3、壓縮速度:運行於 2 GHz 的處理器可達到 1 MB/秒
4、解壓縮速度:運行於 2 GHz 的處理器可達到 10-20 MB/秒
5、較小的解壓縮內存需求(取決於字典大小)
6、較小的解壓縮代碼:約 5 KB
7、支持 Pentium 4 的超線程(Hyper-Threading)技術、多處理器及多核芯處理器
⑨ 求7z演算法的原理,詳細
7z演算法的原理:
簡單地說也就是把文件中的重復數據用更簡潔的方法表示,例如一個文件中有1000個字母A,那麼這將佔用1KB的數據空間,如果用壓縮演算法就可以用1000A來表示,那麼它只需要5個位元組的數據空間,壓縮比達到了200倍。
7z簡介:7z 是一種主流高效的壓縮格式,它擁有極高的壓縮比。在計算機科學中,7z是一種可以使用多種壓縮演算法進行數據壓縮的檔案格式。該格式最初被7-Zip實現並採用,但是這種檔案格式是公有的,並且7-Zip軟體本身亦在GNU寬通用公共許可證 (GNU LGPL)協議下開放源代碼。目前LZMA軟體開發工具包的最新版本為V9.34。7z格式的MIME類型為application/x-7z-compressed。
⑩ 好壓壓縮演算法里LZMA演算法和LZMA2有什麼區別
LZMA2解壓速度要快很多