2012-04-24 56 views
6

私はquazipライブラリを構築しました。 zipファイルを解凍する方法を示す簡単な例が必要です。例えば。Qt:Quazipの簡単な例

Quazip zipFile(QFile("test.zip")); 
zipFile.unzip(); 

quazipで示されているテストはちょっと混乱します。私は例を見つけるのに少しの時間を捜しました。私はそれを見つけることができませんでした。

答えて

10

ファイルの読み方を示す簡単な例です。あなたは、ファイルへのデータの書き込みや、アプリケーションが必要とするものは何でも操作を実行するループ内のコードにいくつかの変更を加える必要があります:あなたは、クラスJlCompressの静的関数を使用することができます

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(); 
8

。それは非常に使いやすいです。

静的公開メンバー関数

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) 

出典:http://quazip.sourceforge.net/classJlCompress.html