QT中使用7z.exe将文件解压到置顶目录(覆盖解压)

bool do7z(const QString &path, const QString &dstPath)
{
    QProcess    m_7z;
    QString exe = "7z.exe";
    QStringList args;
    args << "x" << path << "-o" + dstPath << "-aoa";
    //x:eXtract with full paths用文件的完整路径解压至当前目录或指定目录
    //-o (Set Output Directory)
    //-aoa 直接覆盖现有文件,而没有任何提示
    m_7z.start(exe, args);

    m_7z.waitForFinished(60000);
    if (m_7z.state() != QProcess::NotRunning) {
        return false;
    }

    if (m_7z.exitStatus() == QProcess::NormalExit) {
        return true;
    }
    return false;
}

你可能感兴趣的:(QT实战项目应用,QT实用基础)