QHttp, QTemporaryFile, Inhalt kann nicht gelesen werden
Verfasst: 23. Dezember 2009 20:49
Moin,
ich hole mittels QHttp eine Webseite und speicher diese mit QTemporaryFile ab. Das funktioniert auch perfekt. Wenn ich aber nun in der Funktion, die durch das done() Signal aufgerufen wird, den Inhalt in eine Variable mit readAll() lesen möchte wird nichts in die Variable. Wenn ich aber die Datei so öffne ist die Seite komplett, error() gibt 0 zurück. Ich habe sogar noch ein QFile erzeugt und mit dem die Datei geöffnet, genau das gleiche. Ich weiß nicht mehr weiter, vielleicht wisst ihr was ich falsch mache. Hier sind die betreffenden Codeauszüge.
*.h
Im Konstruktor
Aufruf von http
In der http_done Funktion
Auszug aus der Terminalausgabe
Gnoxter
ich hole mittels QHttp eine Webseite und speicher diese mit QTemporaryFile ab. Das funktioniert auch perfekt. Wenn ich aber nun in der Funktion, die durch das done() Signal aufgerufen wird, den Inhalt in eine Variable mit readAll() lesen möchte wird nichts in die Variable. Wenn ich aber die Datei so öffne ist die Seite komplett, error() gibt 0 zurück. Ich habe sogar noch ein QFile erzeugt und mit dem die Datei geöffnet, genau das gleiche. Ich weiß nicht mehr weiter, vielleicht wisst ihr was ich falsch mache. Hier sind die betreffenden Codeauszüge.
*.h
Code: Alles auswählen
QTemporaryFile *tmp;
QHttp *http;
Code: Alles auswählen
tmp = new QTemporaryFile();
tmp->open();
http = new QHttp();
connect(http, SIGNAL(done(bool)), this, SLOT(http_done()));
Code: Alles auswählen
http->setHost(qurl->host(), 80);
http->get(qurl->path(), tmp );
Code: Alles auswählen
blub = tmp->fileName();
blub1 = tmp->readAll();
std::cout << "in Update TMP Filename: " << blub.toStdString()<< "\n";
std::cout << "Inhalt von tmp2 :" << blub1.toStdString()<< "\n";
std::cout << "tmp Error? : " << tmp->error() << "\n";
Viele Grüßein Update TMP Filename: /tmp/qt_temp.J23338
Inhalt von tmp :
tmp Error? : 0
Gnoxter