{
if (!archive) {
return false;
}
if (mode == DAAbstractArchiveTask::WriteMode) {
qDebug() << QString("create archive error:%1").arg(zip->getBaseFilePath());
return false;
}
}
if (!zip->
write(mPath, mData)) {
qDebug() << QString("write data to \"%1\" error").arg(mPath);
return false;
}
} else {
qDebug() << QString("open archive error:%1").arg(zip->getBaseFilePath());
return false;
}
}
mData = zip->
read(mPath);
if (mData.isEmpty()) {
qDebug() << QString("can not read %1 from %2").arg(mPath, zip->getBaseFilePath());
return false;
}
}
return true;
}
Mode
模式用来区分读写
Definition DAAbstractArchiveTask.h:26
持久化的基类
Definition DAAbstractArchive.h:16
virtual bool exec(DAAbstractArchive *archive, DAAbstractArchiveTask::Mode mode) override
执行任务
Definition DAZipArchiveTask_ByteArray.cpp:47
zip档案
Definition DAZipArchive.h:12
bool open()
打开一个压缩包,主要为了读取
Definition DAZipArchive.cpp:233
QByteArray read(const QString &relatePath) override
读数据
Definition DAZipArchive.cpp:378
bool write(const QString &relatePath, const QByteArray &byte) override
写数据
Definition DAZipArchive.cpp:292
bool create()
创建一个压缩包
Definition DAZipArchive.cpp:251
bool isOpened() const
判断是否打开文件
Definition DAZipArchive.cpp:269