今天我开始了一个使用 Qt 的项目,但我在使用 NetworkAccessManager 下载文件时遇到了一点问题。我对 Qt 很陌生,还不太了解它的结构,所以请对你的建议友好的初学者=)
如果可能的话,你能发布一些代码来帮助我吗?提前致谢!
今天我开始了一个使用 Qt 的项目,但我在使用 NetworkAccessManager 下载文件时遇到了一点问题。我对 Qt 很陌生,还不太了解它的结构,所以请对你的建议友好的初学者=)
如果可能的话,你能发布一些代码来帮助我吗?提前致谢!
这是一个极其简化的代码。各种检查被删除。它并不意味着被复制/粘贴到生产系统中。没有登录。没有ssl。
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
QNetworkRequest request;
request.setUrl(QUrl(source)); // source = url to the file you want to download.
manager->get(request);
replyFinished 槽:
replyFinished(QNetworkReply *reply){
reply->deleteLater();
QByteArray yourFile = reply->readAll();
}
再次:检查文档以获取详细信息,例如错误处理。为简化起见,我假设当调用 replyFinished 时文件的全部内容已经可用。