qtdownload.cpp 947 B

1234567891011121314151617181920212223242526272829303132333435
  1. #include "qtdownload.h"
  2. #include <QCoreApplication>
  3. #include <QUrl>
  4. #include <QtNetwork/QNetworkRequest>
  5. #include <QFile>
  6. QtDownload::QtDownload() : QObject(0) {
  7. QObject::connect(&manager, SIGNAL(finished(QNetworkReply*)),this, SLOT(downloadFinished(QNetworkReply*)));
  8. }
  9. void QtDownload::setTarget(const QString &t) {
  10. this->target = t;
  11. }
  12. void QtDownload::downloadFinished(QNetworkReply *data) {
  13. QFile localFile("ad.png");
  14. if (!localFile.open(QIODevice::WriteOnly))
  15. return;
  16. const QByteArray sdata = data->readAll();
  17. localFile.write(sdata);
  18. localFile.close();
  19. emit done();
  20. }
  21. void QtDownload::download() {
  22. QUrl url = QUrl::fromEncoded(this->target.toLocal8Bit());
  23. QNetworkRequest request(url);
  24. QObject::connect(manager.get(request), SIGNAL(downloadProgress(qint64,qint64)), this, SLOT(downloadProgress(qint64,qint64)));
  25. }
  26. void QtDownload::downloadProgress(qint64 recieved, qint64 total) {
  27. }