2012-04-24 4 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