【问题标题】:Developing an Application for File Compression [closed]开发文件压缩应用程序 [关闭]
【发布时间】:2009-10-19 12:23:53
【问题描述】:

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

【问题讨论】:

  • 老实说,看看 7zip 的源代码。
  • 我看不出投反对票的理由。

标签: c++ file compression 7zip winrar


【解决方案1】:

看看zlib

【讨论】:

    【解决方案2】:

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

    来自维基百科。

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

    【讨论】:

      【解决方案3】:

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

      Zip Utils - clean, elegant, simple, C++/Win32

      【讨论】:

        【解决方案4】:

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

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-04-07
          • 1970-01-01
          • 2018-05-16
          • 2013-04-27
          • 2017-04-30
          • 2010-10-07
          • 1970-01-01
          相关资源
          最近更新 更多