1 #ifndef JLCOMPRESSFOLDER_H_
2 #define JLCOMPRESSFOLDER_H_
30 #include "quazipfile.h"
31 #include "quazipfileinfo.h"
32 #include "quazip_qt_compat.h"
33 #include <QtCore/QString>
34 #include <QtCore/QDir>
35 #include <QtCore/QFileInfo>
36 #include <QtCore/QFile>
45 static bool copyData(QIODevice &inFile, QIODevice &outFile);
46 static QStringList extractDir(
QuaZip &zip,
const QString &dir);
47 static QStringList getFileList(
QuaZip *zip);
48 static QString extractFile(
QuaZip &zip, QString fileName, QString fileDest);
49 static QStringList extractFiles(
QuaZip &zip,
const QStringList &files,
const QString &dir);
57 static bool compressFile(
QuaZip* zip, QString fileName, QString fileDest);
68 static bool compressSubDir(
QuaZip* parentZip, QString dir, QString parentDir,
bool recursive,
69 QDir::Filters filters);
77 static bool extractFile(
QuaZip* zip, QString fileName, QString fileDest);
83 static bool removeFile(QStringList listFile);
91 static bool compressFile(QString fileCompressed, QString file);
98 static bool compressFiles(QString fileCompressed, QStringList files);
109 static bool compressDir(QString fileCompressed, QString dir = QString(),
bool recursive =
true);
126 static bool compressDir(QString fileCompressed, QString dir,
127 bool recursive, QDir::Filters filters);
137 static QString extractFile(QString fileCompressed, QString fileName, QString fileDest = QString());
146 static QStringList extractFiles(QString fileCompressed, QStringList files, QString dir = QString());
154 static QStringList extractDir(QString fileCompressed, QString dir = QString());
163 static QStringList extractDir(QString fileCompressed, QTextCodec* fileNameCodec, QString dir = QString());
170 static QStringList getFileList(QString fileCompressed);
179 static QString extractFile(QIODevice *ioDevice, QString fileName, QString fileDest = QString());
188 static QStringList extractFiles(QIODevice *ioDevice, QStringList files, QString dir = QString());
196 static QStringList extractDir(QIODevice *ioDevice, QString dir = QString());
205 static QStringList extractDir(QIODevice* ioDevice, QTextCodec* fileNameCodec, QString dir = QString());
212 static QStringList getFileList(QIODevice *ioDevice);
bool open(Mode mode, zlib_filefunc_def *ioApi=nullptr)
Opens ZIP file.
Definition: quazip.cpp:235
@ mdAppend
Definition: quazip.h:98
static bool compressFile(QuaZip *zip, QString fileName, QString fileDest)
Compress a single file.
Definition: JlCompress.cpp:41
void setFileName(const QString &fileName, QuaZip::CaseSensitivity cs=QuaZip::csDefault)
Sets the file name.
Definition: quazipfile.cpp:224
Mode getMode() const
Returns the mode in which ZIP file was opened.
Definition: quazip.cpp:643
@ mdCreate
ZIP file was created with open() call.
Definition: quazip.h:97
Utility class for typical operations.
Definition: JlCompress.h:43
@ mdUnzip
ZIP file is open for reading files inside it.
Definition: quazip.h:96
static bool compressDir(QString fileCompressed, QString dir=QString(), bool recursive=true)
Compress a whole directory.
Definition: JlCompress.cpp:269
bool goToNextFile()
Sets the current file to the next file in the archive.
Definition: quazip.cpp:495
bool getCurrentFileInfo(QuaZipFileInfo *info) const
Retrieves information about the current file.
Definition: quazip.cpp:509
int getZipError() const
Returns the error code returned by the last ZIP/UNZIP API call.
Definition: quazipfile.cpp:531
int getZipError() const
Returns the error code of the last operation.
Definition: quazip.cpp:653
bool setCurrentFile(const QString &fileName, CaseSensitivity cs=csDefault)
Sets current file by its name.
Definition: quazip.cpp:425
QFile::Permissions getPermissions() const
Get the file permissions.
Definition: quazipfileinfo.cpp:59
QString getZipName() const
Returns the name of the ZIP file.
Definition: quazip.cpp:631
static bool removeFile(QStringList listFile)
Remove some files.
Definition: JlCompress.cpp:204
A file inside ZIP archive.
Definition: quazipfile.h:74
ZIP archive.
Definition: quazip.h:84
bool open(OpenMode mode) override
Opens a file for reading.
Definition: quazipfile.cpp:254
void close() override
Closes the file.
Definition: quazipfile.cpp:469
bool isSymbolicLink() const
Checks whether the file is a symbolic link.
Definition: quazipfileinfo.cpp:64
void setFileNameCodec(QTextCodec *fileNameCodec)
Sets the codec used to encode/decode file names inside archive.
Definition: quazip.cpp:591
QString getCurrentFileName() const
Returns the current file name.
Definition: quazip.cpp:567
static bool compressFiles(QString fileCompressed, QStringList files)
Compress a list of files.
Definition: JlCompress.cpp:239
Information about a file inside archive (with zip64 support).
Definition: quazipfileinfo.h:85
void close()
Closes ZIP file.
Definition: quazip.cpp:341
static bool compressSubDir(QuaZip *parentZip, QString dir, QString parentDir, bool recursive, QDir::Filters filters)
Compress a subdirectory.
Definition: JlCompress.cpp:79
Information about a file to be created.
Definition: quazipnewinfo.h:50
QString name
File name.
Definition: quazipfileinfo.h:87
bool goToFirstFile()
Sets the current file to the first file in the archive.
Definition: quazip.cpp:483
@ mdAdd
ZIP file was opened for adding files in the archive.
Definition: quazip.h:106