今天我开始使用Qt的项目,我在使用NetworkAccessManager下载文件时遇到了一些麻烦。我对Qt很新,并且还不太了解结构,所以请初学者友好地提出您的建议=)
如果可能的话,你能发布一些代码来帮助我吗?提前谢谢!
答案 0 :(得分:1)
这是一个非常简化的代码。各种检查都被删除了。它并不意味着复制/粘贴到生产系统中。没有登录。没有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时,文件的完整内容确实可用。