A LZW (Lempel–Ziv–Welch) compression algorithm implementation using java. It was an assignment for the Compression and Information theory course in Cairo University Faculty of Computers and Artificial Intelligence.
This implementation can't compress binary files, it is not designed to, so only text ASCII files can be compressed.
To compress a file run the program with the following arguments:
java -jar lzw.jar -c <filename>
For decompression:
java -jar lzw.jar -d <filename>
Using 5 paragraphs of Lorem ipsum:
Input file is 2,588 bytes
Compressed file is 1,976 bytes