① 请问这俩个什么区别
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解压速度要快很多