TextCompressor with compression and decompression algorithms: LZW RLE Huffman Coding algorithm.
For effective compression of text information without loss, three main ones are used methods: LZW (Lempel-Ziv-Welch), RLE (Run-Length Encoding) and Huffman Coding. Each of of these methods has its own unique features and principles of work that interact for achieving optimal results.
Input Data
- Text information for compression: User must enter a file path (including file name) which it wants to zip/unzip.
- Selection of the compression method: The user selects the compression method from the available options: LZW, RLE, or Huffman Coding using the dropdown list.
- Checking the correctness of input: The program has built-in input control mechanisms. An error message system is displayed in case of an incorrect one entering the path to the file or not choosing the compression method.
- Input data format: Input is accepted as text.
- Size and volume of input data: The program can process text information of any size but actual processing volumes may depend on memory characteristics computer and its resources.
- Protection against errors in input data: To prevent errors in the input data, a built-in is provided a mechanism for checking the correctness of input, which includes a check valid characters and data types.
Resulting Information
- Compressed and decompressed data: The program creates a new text document with the name specified by the user.
- Performance statistics: Program results include performance statistics of the selected compression method: degree of compression (in %), compression time, memory usage before/after compression.
- Error messages and status: The program provides error messages for information user in case of incorrect input data or other situations that require the user's attention