Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Zvereman/qmicroz

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QMicroz

A simple Zip/Unzip solution for Qt projects.

This is a lightweight C++/Qt wrapper around the miniz zip library (based on zlib).
The code can easily be used as a standalone library (shared or static), which will provide ready-made functions for quick and convenient work with zip archives. There is no need to add additional dependencies and deal with low-level APIs.

The project purpose.

Creation of a minimalist, publicly accessible and most easy to use tool that does not require a long documentation study. The priority is the possibility of embedding into Qt projects with ease, with a reduced number of code lines.

The library is well suitable, for example, for working with the contents of files of common types of documents (*.epub, *.docx, *.odt, *.ver ...), which are essentially packaged archives.

Key features:

  • Create and extract zip files.
    Working with files, folders and their lists.
  • Create/extract archives from/to buffered data.
    UnZip files into the RAM buffer.
    Make a zip file from QByteArray (or a list of them).
    Extract the buffered zip to disk...

How to use:

Basic functions are available statically. For example:

Extracting the archive to the parent folder

QMicroz::extract("zip_file_path");

Archiving a folder with custom path to zip

QMicroz::compress_folder("source_path", "zip_file_path");

Zipping a list of files and/or folders

QMicroz::compress_here({"file_path", "folder_path", "file2_path"});

UnZipping a file into a memory buffer (non-static)

BufList buffer;
QMicroz qmz("path_to_zip");
if (qmz) // whether successfully opened
    buffer = qmz.extractToBuf();

More examples on Wiki.
A complete list of functions is available in the qmicroz.h file.

About

C++/Qt wrapper over miniz. Zip/Unzip with Qt.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 92.3%
  • C++ 7.4%
  • Other 0.3%