VBcoders Browse New Submit Contact Sign In

No account? Register free

Forgot password?

Huffman Compression Algorithm (like WinZIP)

James Vincent Carnicelli  (21 Submissions)   Encryption   Visual Basic 3.0   Intermediate   Wed 3rd February 2021

PKZIP, ARJ, ARC, JPEG, and a host of other programs and compressed file formats all use the Huffman coding algorithm (or similar redundancy-minimization methods) for compressing strings.

With this small VB module, you can do your own compression in code -- compressing strings down to as small as 13%. Here's how easy it is:


        Compressed = HuffmanEncode(Text1)

        Text2 = HuffmanDecode(Compressed)


This simple code can be used to compress big text fields in databases, keep your data files small, or speed up transfers of data across the Internet. It can also be used as a form of encryption.

The HuffmanCoding.bas module has plenty of extra information and some in-code documentation (in case you're wondering out how it works.)

Please comment on this code and vote for my hard work if you like this code.

_____________________________________

Updates:

1 August 2000:

  • Rebuilt from scratch
  • Compression takes 28% of the time it did before
  • Decompression takes 19% of the time it did before
  • There's only one file, now (no extra class)
  • Much better error checking and reporting
  • Uses a stored checksum upon decompression to check for corruption
  • The code is only 455 lines, including comments!
  • Thanks to optimization, the code is even more convoluted :-)

    Rate Huffman Compression Algorithm (like WinZIP) (22(22 Vote))

    Download Huffman Compression Algorithm (like WinZIP)

    Huffman Compression Algorithm (like WinZIP) Comments

    No comments yet — be the first to post one!

    Post a Comment

    0/1000 characters