Qt QNetworkRequest是否下载图像?
我使用Qt QNetworkRequest是否下载图像?,qt,Qt,我使用QNetworkRequest从web上检索xml时没有遇到任何问题: request.setUrl(QUrl("http://api.somesite.com/api/4we35r/somefile.xml")); myNetworkAccessManager->get(request); 我将如何下载图像?例: http://www.mysite.com/27eye28/images/myimage.png 我是否要用png url替换上面的xml url?我需要做什么特别
QNetworkRequest
从web上检索xml时没有遇到任何问题:
request.setUrl(QUrl("http://api.somesite.com/api/4we35r/somefile.xml"));
myNetworkAccessManager->get(request);
我将如何下载图像?例:
http://www.mysite.com/27eye28/images/myimage.png
我是否要用png url替换上面的xml url?我需要做什么特别的事情吗?是的,替换URL就是你所要做的一切 这是一个有效的例子
void MainWindow::GetImage(QString url)
{
QNetworkAccessManager* manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply *)), this, SLOT(replyFinished(QNetworkReply *)));
QUrl url = QUrl(url);
QNetworkRequest request(url);
manager->get(request);
}
void MainWindow::replyFinished(QNetworkReply *reply)
{
if(reply->error() != QNetworkReply::NoError)
{
ui->textBrowser->setText("Error: " + reply->errorString());
}
else
{
QByteArray responseData = reply->readAll();
QFile file("d:\\myImage.png");
file.open(QIODevice::WriteOnly);
file.write((responseData));
file.close();
}
}
完美的谢谢!