0

如何在 c/c++ 中压缩文件?因为我想开发像 WinZip / WinRAR 这样的应用程序。一个更简单的。

4

4 回答 4

6

看看zlib

于 2009-10-19T12:41:52.737 回答
4

你可以试试霍夫曼编码。在许多 CS 程序中,实现 Huffman 编码是一项非常标准的任务。

来自维基百科。

在计算机科学和信息论中,霍夫曼编码是一种用于无损数据压缩的熵编码算法。该术语是指使用可变长度代码表对源符号(例如文件中的字符)进行编码,其中可变长度代码表是根据每个符号的估计出现概率以特定方式得出的源符号的可能值。它是由 David A. Huffman 在博士期间开发的。麻省理工学院的学生,并发表在 1952 年的论文“A Method for the Construction of Minimum-Redundancy Codes”中。

于 2009-10-19T12:28:37.690 回答
2

用于 C++ 的快速、简单且易于使用的 ZIP 压缩实用程序:

Zip Utils - 干净、优雅、简单、C++/Win32

于 2009-10-19T12:26:45.023 回答
0

看看gzipbzip2。这两种都是广泛使用的文件压缩算法,比 .zip 压缩得更好,但是它们通常只用于压缩单个文件。为了创建档案,gzip 和 bzip2 都依赖于单独的 tar 应用程序。

如果您编写一个可以管理包含 gzipped/bzip2ed 文件的存档的单个应用程序,例如 winzip,那确实比原始 gzip/bzip2 更简单。

于 2009-10-19T13:53:39.293 回答