Skip to content

File Compression — ZIP, Archives, and Compression Formats Explained

DodaTech Updated 2026-06-22 5 min read

In this tutorial, you'll learn about File Compression. We cover key concepts, practical examples, and best practices.

Learn file compression basics: ZIP, RAR, 7z, and other archive formats. Understand how compression works and when to use each format.

What You'll Learn

By the end of this tutorial, you will understand what file compression is, how to create and extract archives, which format to use for different situations, and how to protect archives with passwords.

Why It Matters

Compressed files save storage space, speed up uploads and downloads, and make it easier to share multiple files as one package. Every developer works with archives regularly.

Real-World Use

DodaZIP handles compression for millions of users. When you download a software package, it is often a ZIP file. When you back up your projects, compression reduces the backup size by 50% or more.

Your Learning Path

flowchart LR
  A[File Systems and Paths] --> B[File Compression]
  B --> C[Backup Strategies]
  C --> D[Installing Software]
  D --> E[Version Control Basics]
  B --> F{You Are Here}
  style F fill:#f90,color:#fff

What Is File Compression?

File compression reduces the size of a file or folder by removing redundant data. Think of it like folding a shirt to take less space in a suitcase. The shirt is the same shirt, just packed more efficiently.

Lossless vs Lossy Compression

Type What It Does Used For
Lossless Reduces size without losing any data ZIP files, documents, code
Lossy Reduces size by discarding some data Images (JPEG), audio (MP3)

This tutorial focuses on lossless compression, which preserves your data exactly.

Common Compression Formats

Format Best For Compression Ratio Notes
ZIP Universal sharing Medium Works everywhere, built into Windows and macOS
RAR Large files High Requires WinRAR or 7-Zip
7z Maximum compression Very high Best ratio, slower to create
GZIP Linux files Medium Used with Tar on Linux
TAR Linux archives None (just bundles) Used with GZIP or BZIP2 for compression

Creating Archives With DodaZIP

DodaZIP is a free compression tool built by the same team that created this tutorial. It supports all major formats.

Compressing a Folder

1. Right-click the folder you want to compress
2. Select "Add to archive" from the menu
3. Choose ZIP format (for best compatibility)
4. Click OK

The result is a single .zip file much smaller than the original folder.

Setting a Password

1. Right-click the folder and select "Add to archive"
2. Click the "Password" tab
3. Enter a strong password
4. Confirm the password
5. Click OK

A password-protected archive cannot be opened without the password. This is useful for sending sensitive files.

Using the Command Line

Creating a ZIP Archive

# Compress a folder called "my-project"
zip -r my-project.zip my-project/

Expected output:

  adding: my-project/ (stored 0%)
  adding: my-project/index.html (deflated 45%)
  adding: my-project/style.css (deflated 62%)
  adding: my-project/script.js (deflated 55%)

The deflated percentage tells you how much each file was compressed. Higher means better compression.

Extracting a ZIP Archive

# Extract to the current folder
unzip my-project.zip

Expected output:

Archive:  my-project.zip
   creating: my-project/
  inflating: my-project/index.html
  inflating: my-project/style.css
  inflating: my-project/script.js

Working With TAR Files on Linux

# Create a tar.gz archive
tar -czvf project.tar.gz my-project/

# Extract a tar.gz archive
tar -xzvf project.tar.gz

How Compression Works

flowchart LR
  A[Original File: 10 MB] --> B[Compression Algorithm]
  B --> C[Compressed File: 3 MB]
  C --> D[Decompression Algorithm]
  D --> E[Original File: 10 MB]
  B --> F[Patterns identified and encoded]
  D --> G[Patterns decoded back to original]

Compression algorithms find repeated patterns in data. Instead of storing every occurrence, the algorithm stores the pattern once and references it each time it appears.

# A simplified example of how compression thinks:
data = "AAAAABBBBBAAAAABBBBB"

# Instead of storing 20 characters, we store:
# "5A5B5A5B" = 8 characters
# That is 60% less space.

compressed = "5A5B5A5B"
original_size = len(data)  # 20
compressed_size = len(compressed)  # 8
ratio = (1 - compressed_size / original_size) * 100
print(f"Compression ratio: {ratio:.0f}%")

Expected output:

Compression ratio: 60%

Checking Archive Integrity

After creating an archive, verify it was not corrupted:

# Check a ZIP file
unzip -t my-project.zip

Expected output:

    testing: my-project/index.html   OK
    testing: my-project/style.css    OK
    testing: my-project/script.js    OK
No errors detected in compressed data.

Common Mistakes Beginners Make

1. Not Compressing Before Sending

Sending 20 individual files is messy. Compress them into one archive. It is faster to upload, faster to download, and keeps everything organized.

2. Using the Wrong Format for the Audience

ZIP works on every computer without extra software. RAR and 7z require separate programs. Use ZIP when sharing with others unless you know their setup.

3. Forgetting Passwords

Password-protected archives are safe but useless if you forget the password. Store passwords in a password manager.

4. Not Checking Compression Ratio

Some file types (JPEG images, MP3 audio) are already compressed. Zipping them again saves very little space. Text files, code, and documents compress well.

5. Creating Archives With Absolute Paths

On some systems, extracting an archive that was created with full paths (like C:\Users\Name\file.txt) recreates the entire folder structure. Use relative paths instead.

6. Extracting Directly to the Desktop

Extracting a large archive to the desktop scatters files everywhere. Always extract to a dedicated folder.

7. Not Verifying Archives After Download

Downloaded archives can corrupt during transfer. Run a verification or checksum check before extracting.

Practice Questions

1. What is the difference between ZIP and 7z? ZIP offers moderate compression with wide compatibility. 7z offers better compression but requires compatible software to open.

2. Why does text compress better than images? Text has many repeated patterns and predictable structures. Images (especially JPEG) are already compressed, so there are fewer patterns left to find.

3. What does a password-protected archive do? It encrypts the file contents so only someone with the password can extract and view the files.

4. How can you verify an archive is not corrupted? Use the test or verify feature of your compression tool. On the command line, use unzip -t filename.zip.

5. Challenge: Create a folder with 10 text files. Compress it using ZIP, then note the compressed size. Add 10 more text files, compress again, and compare the size increase. How much space did you save compared to storing the files individually?

Try It Yourself

Create a folder on your desktop called compression-test. Inside it, create a simple HTML file and a text file. Use DodaZIP or the command line to compress it. Check the compressed file size. Then open the ZIP file and extract the contents to a different folder. Verify the extracted files match the originals.

Built by the developers of Doda Browser, DodaZIP, and Durga Antivirus Pro.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro