我建立了quazip库。我需要一个简单的示例来说明如何解压缩 zip 文件。例如。
Quazip zipFile( QFile("test.zip") );
zipFile.unzip();
quazip 中显示的测试有点令人困惑。我搜索了很短的时间来找到一个例子,但我找不到一个。
这是一个显示如何读取文件的快速示例。您需要对循环中的代码进行一些修改,以将数据写入文件或执行应用程序所需的任何操作:
QuaZip zip("zipFile.zip");
zip.open(QuaZip::mdUnzip);
QuaZipFile file(&zip);
for(bool f=zip.goToFirstFile(); f; f=zip.goToNextFile()) {
file.open(QIODevice::ReadOnly);
//same functionality as QIODevice::readData() -- data is a char*, maxSize is qint64
file.readData(data,maxSize);
//do something with the data
file.close();
}
zip.close();
您可以使用 JlCompress 类的静态函数。它非常易于使用。
静态公共成员函数
static bool compressFile (QString fileCompressed, QString file)
static bool compressFiles (QString fileCompressed, QStringList files)
static bool compressDir (QString fileCompressed, QString dir=QString(), bool recursive=true)
static QString extractFile (QString fileCompressed, QString fileName, QString fileDest=QString())
static QStringList extractFiles (QString fileCompressed, QStringList files, QString dir=QString())
static QStringList extractDir (QString fileCompressed, QString dir=QString())
static QStringList getFileList (QString fileCompressed)