generierte xml-seite auslesen?

Alles rund um die Programmierung mit Qt
Antworten
drue
Beiträge: 7
Registriert: 11. Juni 2007 20:44

generierte xml-seite auslesen?

Beitrag von drue »

Hallo zusammen,

ich häng gerade an einem problem. Wenn man den folgenden link http://webservices.amazon.de/onca/xml3? ... ge=1&f=xml in einem browser eingibt bekommt man eine nette xml datei angezeigt. Wie kann ich diese speichern damit ich sich mit QDomDocument parsen kann?

CU
Drue
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

QHttp ist dein Freund...
drue
Beiträge: 7
Registriert: 11. Juni 2007 20:44

Beitrag von drue »

Hallo Upsale,

erstmal danke für deine schnelle antwort. Leider komm ich mit QHttp auch nicht weiter. Vlt benutz ich die auch falsch.

QHttp m_http ("http:// .........");
QFile file("/tmp/foo");
file.open(IO_WriteOnly);
m_http.get("http://.....", &file");
file.close();
//funzt net

Ich hab dann mal mit QHttp::readAll() rumgespielt auch nichts. An welche funktion hattest du denn gedacht?

CU drue
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Liest hier auch mal jemand die Dokumentation?

Code: Alles auswählen

#include <QtGui>
#include "test.h"

int main(int argc, char *argv[])
{
	QApplication app(argc, argv);		
	Test *test=new Test();			
	return app.exec();
}

Code: Alles auswählen

#include <QtXml>
#include <QtNetwork>

class Test : public QObject
{
Q_OBJECT
public:
	Test(QObject *parent = 0);
	~Test();
	
private slots:	
	void ready();
	
private:
	QHttp *m_http;	
	QBuffer m_buffer;
};

Code: Alles auswählen

#include "test.h"

Test::Test(QObject *parent)
 : QObject(parent)
{
	m_http=new QHttp(this);
	m_http->setHost("webservices.amazon.de");	
	m_http->get("http://webservices.amazon.de/onca/xml3?t=webservices-20&dev-t=D1URM11J3F2CEH&KeywordSearch=Queen&mode=&type=lite&locale=de&page=1&f=xml", &m_buffer);
	
	connect(m_http, SIGNAL(requestFinished(int, bool)), this, SLOT(ready()));
}

Test::~Test()
{
}

void Test::ready()
{
	QDomDocument doc;
	doc.setContent(m_buffer.data());
		
	qDebug() << doc.toString();
}
Antworten