当前位置:首页 » 文件管理 » zip解压源码

zip解压源码

发布时间: 2022-05-26 16:03:06

⑴ 求助压缩解压缩程序源代码

压缩文件的基本原理是查找文件内的重复字节,并建立一个相同字节的"词典"文件,并用一个代码表示,比如在文件里有几处有一个相同的词"中华人民共和国"用一个代码表示并写入"词典"文件,这样就可以达到缩小文件的目的.
由于计算机处理的信息是以二进制数的形式表示的,因此压缩软件就是把二进制信息中相同的字符串以特殊字符标记来达到压缩的目的。为了有助于理解文件压缩,请您在脑海里想象一幅蓝天白云的图片。对于成千上万单调重复的蓝色像点而言,与其一个一个定义“蓝、蓝、蓝……”长长的一串颜色,还不如告诉电脑:“从这个位置开始存储1117个蓝色像点”来得简洁,而且还能大大节约存储空间。这是一个非常简单的图像压缩的例子。其实,所有的计算机文件归根结底都是以“1”和“0”的形式存储的,和蓝色像点一样,只要通过合理的数学计算公式,文件的体积都能够被大大压缩以达到“数据无损稠密”的效果。总的来说,压缩可以分为有损和无损压缩两种。如果丢失个别的数据不会造成太大的影响,这时忽略它们是个好主意,这就是有损压缩。有损压缩广泛应用于动画、声音和图像文件中,典型的代表就是影碟文件格式mpeg、音乐文件格式mp3和图像文件格式jpg。但是更多情况下压缩数据必须准确无误,人们便设计出了无损压缩格式,比如常见的zip、rar等。压缩软件(compression software)自然就是利用压缩原理压缩数据的工具,压缩后所生成的文件称为压缩包(archive),体积只有原来的几分之一甚至更小。当然,压缩包已经是另一种文件格式了,如果你想使用其中的数据,首先得用压缩软件把数据还原,这个过程称作解压缩。常见的压缩软件有winzip、winrar等。
有两种形式的重复存在于计算机数据中,zip就是对这两种重复进行了压缩。
一种是短语形式的重复,即三个字节以上的重复,对于这种重复,zip用两个数字:1.重复位置距当前压缩位置的距离;2.重复的长度,来表示这个重复,假设这两个数字各占一个字节,于是数据便得到了压缩,这很容易理解。
一个字节有 0 - 255 共 256 种可能的取值,三个字节有 256 * 256 * 256 共一千六百多万种可能的情况,更长的短语取值的可能情况以指数方式增长,出现重复的概率似乎极低,实则不然,各种类型的数据都有出现重复的倾向,一篇论文中,为数不多的术语倾向于重复出现;一篇小说,人名和地名会重复出现;一张上下渐变的背景图片,水平方向上的像素会重复出现;程序的源文件中,语法关键字会重复出现(我们写程序时,多少次前后、paste?),以几十 K 为单位的非压缩格式的数据中,倾向于大量出现短语式的重复。经过上面提到的方式进行压缩后,短语式重复的倾向被完全破坏,所以在压缩的结果上进行第二次短语式压缩一般是没有效果的。
第二种重复为单字节的重复,一个字节只有256种可能的取值,所以这种重复是必然的。其中,某些字节出现次数可能较多,另一些则较少,在统计上有分布不均匀的倾向,这是容易理解的,比如一个 ASCII 文本文件中,某些符号可能很少用到,而字母和数字则使用较多,各字母的使用频率也是不一样的,据说字母 e 的使用概率最高;许多图片呈现深色调或浅色调,深色(或浅色)的像素使用较多(这里顺便提一下:png 图片格式是一种无损压缩,其核心算法就是 zip 算法,它和 zip 格式的文件的主要区别在于:作为一种图片格式,它在文件头处存放了图片的大小、使用的颜色数等信息);上面提到的短语式压缩的结果也有这种倾向:重复倾向于出现在离当前压缩位置较近的地方,重复长度倾向于比较短(20字节以内)。这样,就有了压缩的可能:给 256 种字节取值重新编码,使出现较多的字节使用较短的编码,出现较少的字节使用较长的编码,这样一来,变短的字节相对于变长的字节更多,文件的总长度就会减少,并且,字节使用比例越不均匀,压缩比例就越大。

linux解压zip文件的命令

linux怎么解压zip包,操作方法如下。

1、首先在电脑中,连接到linux远程主机,并进入zip文件所在目录,如下图所示。

⑶ 高分求一种压缩算法对文本进行压缩和解压的源码

7-Zip 是一款 开源 软件。大多数源代码都基于 GNU LGPL 许可协议下发布。AES 代码基于 BSD 许可下发布。unRAR 代码基于两种许可:GNU LGPL 和 unRAR 限制许可。
您可以在使用任何计算机上使用 7-Zip ,包括用在商业用途的计算机,不对 7-Zip 进行捐赠或支付并不影响您的使用。但是您可以通过 捐赠 的方式来支持 7-Zip 今后的发展。
7-Zip 主要特征
更新了算法来加大 7z 格式 的压缩比
支持格式:
压缩及解压缩:7z、ZIP、GZIP、BZIP2 和 TAR (目前不支持RAR格式,是因为RAR是一种商业格式)
仅解压缩:RAR、CAB、ISO、ARJ、LZH、CHM、WIM、Z、CPIO、RPM、DEB 和 NSIS
对于 ZIP 及 GZIP 格式,7-Zip 能提供比使用 PKZip 及 WinZip 高 2-10% 的压缩比
7z 格式支持创建自释放(SFX)压缩档案
集成 Windows 外壳扩展
强大的的文件管理
强大的命令行版本
支持 FAR Manager 插件
支持 69 种语言
通常使用 7-Zip 的 7z 格式能比使用 zip 格式的压缩档案小 30-70%。并且使用 7-Zip 创建的 zip 格式比大多数其它压缩软件创建的都小 2-10%。
7zip的官方主页
http://www.7-zip.org/ 英文
http://7z.sparanoid.com/ 简体中文
7zip的SF主页
http://sourceforge.net/projects/sevenzip/ 在这里可以下载到所有的版本及其源代码,以及LZMA算法源代

⑷ 易语言zip解压如何取解压进度求源码

.版本 2
.支持库 eCompress
.子程序 _解压_被单击
进度条1.最大位置 = 100
进度条1.位置 = 1
ZIP压缩1.解压 (“d:\test.zip”, “d:\test”)
.子程序 _ZIP压缩1_解压缩进度, 逻辑型
.参数 已完成百分比, 整数型
进度条1.位置 = 已完成百分比

⑸ 手机怎么解压zip

zip是指一种高储存密度的磁盘驱动器与磁盘,ZIP通常使用后缀名“.zip”,目前,ZIP格式属于几种主流的压缩格式之一,其竞争者包括RAR格式以及开放源码的7-Zip格式。

zip是什么文件?

ZIP是一种相当简单的分别压缩每个文件的存档格式。ZIP常用名称,其一是指一种软驱,一片ZIP磁盘的容量约100MB。另指计算机文件压缩算法,原名真空,发明者为菲尔·卡茨,他于1989年1月公布了该格式的资料。

zip文件如何打开?

Zip格式的文件是一种经过压缩的文件,通过压缩之后,文件的体积会变小,从而更有利于在网络上传播。经过压缩的文件,如果想要再次使用,就必须通过解压缩后才能使用。常见的解压缩软件有WinRAR。利用WinRAR软件打开Zip格式文件的方法如下:

1.上网搜索并下载WinRAR解压缩软件。

2.WinRAR解压缩软件的安装过程:下载完成后,双击文件WRAR进行安装操作,在弹出的第一个安装窗口中选择文件安装的路径。接下来直接点击下一步,出现关联文件类型窗口,点击窗口界面上的“全部选择”以关联所有文件类型,点击“完成”按钮开始安装。

3.WinRAR软件安装完成后,双击需要打开的Zip格式的文件,则会打开一个窗口,首先选择要查看的文件或文件夹,然后点击位于窗口上方工具栏上的“解压缩”按钮,在弹出的“解压路径和选择”对话框中选择将要解压输出的目录,设置完成后点击“确定”即可实现当前Zip格式文件的解压缩操作。

4.最后转到输出文件的位置,就可以查看压缩文件里的具体内容了。

⑹ zip格式网站源码怎么解压怎么解压不了,求解答。建站

在线解压是需要RAR格式的,先在电脑压缩城RAR格式再上传到网上在线解压吧

⑺ 怎么获取linux下压缩zip命令的实现源码

可以使用zip命令,解压使用unzip命令
zip命令使用方法:zip -r conf.zip /etc/sshd.conf
上述命令意思是 使用zip压缩/etc/sshd.conf文件,压缩名为conf.zip

⑻ vb 怎么压缩,解压文件,就是rar或者zip,给我源码,还有调用哪个dll

其实无需调用DLL,现在只要系统中安装了WinRAR,其安装目录自带了压缩和解压软件:Rar.exe、UnRAR.exe,使用VB的shell调用这两个软件即可,WinRAR支持的格式非常多,不用自己再去造轮子了,下面是简单的示例代码:
注:如果不想安装WinRAR,那就到已安装WinRAR的电脑中将拷贝到你的某个路径中再调用吧

'将C盘根目录中的mydoc.docx文件,压缩成根目录下的mydoc.rar文件
'使用rar.exe,调用格式:rar.exe a <目标压缩包文件> <源文件>
Private Sub Command1_Click()
Call Shell("C:\Program Files\WinRAR\rar.exe a c:\mydoc.rar c:\mydoc.docx", vbHide)
End Sub

'将C盘根目录下的mydoc.rar压缩包中的文件,解压到D盘一个目录中
'使用unrar.exe,调用格式:unrar.exe x <源压缩包文件> <目标路径>
Private Sub Command2_Click()
Call Shell("C:\Program Files\WinRAR\unrar.exe x c:\mydoc.rar d:\temp", vbHide)
End Sub

java压缩文件用ZipInputStream无法解压,下面是源代码

我想代码基本没有错,可以解压zip文件
但你的输入文件是rar。
rar和zip是完全不同的算法。rar是商业压缩格式,zip是公开格式。
java的预置库目前无法直接解压rar ,需要用第三方库

热点内容
新版安卓怎么用游戏键盘 发布:2025-01-23 17:51:32 浏览:544
如何开启电脑服务器无法上网 发布:2025-01-23 17:37:06 浏览:391
安卓手机锁了怎么开 发布:2025-01-23 17:21:18 浏览:137
经济学算法 发布:2025-01-23 17:13:46 浏览:421
如何和软件联系服务器 发布:2025-01-23 17:13:00 浏览:800
javacrc16算法 发布:2025-01-23 17:11:31 浏览:225
编程加图片 发布:2025-01-23 17:10:33 浏览:567
中国风网站源码 发布:2025-01-23 17:05:56 浏览:680
pythonfilter用法 发布:2025-01-23 17:04:26 浏览:569
java转number 发布:2025-01-23 16:58:11 浏览:477