Bonjour,

Je développe en ce moment une tite appli de gestion de films, et pour cela j'ai besoin de récupérer des info depuis internet. J'ai déjà réussi à parser le fichier xml en local, maintenant je voulais savoir comment faire depuis internet.

Est ce que je dois télécharger le xml d'abord ou est ce que je peut le lire directement ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
QFile file("tmdb.xml");
 
  if (!file.open(QIODevice::ReadOnly))
    return;
if (!doc.setContent(&file)) {    //?tablit le document XML ?
      file.close(); //partir des donn?es du fichier (hi?rarchie, etc)
      return;
  }
file.close();
 
QDomElement moviematches;
QDomElement racine = doc.documentElement(); //renvoie la balise racine
QDomNode noeud = racine.firstChild(); //renvoie la 1?re balise ? movie ?
while(!noeud.isNull())
{
//convertit le nœud en ?l?ment pour utiliser les
//m?thodes tagName() et attribute()
moviematches = noeud.toElement();
//v?rifie la pr?sence de la balise ? movie ?
if (moviematches.tagName() == "movies")
{
    QDomNode noeud2 = moviematches.firstChild();
    moviematches = noeud2.toElement();
    if (moviematches.tagName() == "movie")
    {
        QDomNode noeud3 = moviematches.firstChild();
    moviematches = noeud3.toElement();
    while (!(moviematches.nodeName() == "name"))
    { 
noeud3 = noeud3.nextSibling(); //passe ? la “movie” suivante
moviematches = noeud3.toElement();
    }
    ui->label_25->setText(moviematches.firstChild().toText().data());
 
    while (!(moviematches.nodeName() == "overview"))
    {
noeud3 = noeud3.nextSibling(); //passe ? la “movie” suivante
moviematches = noeud3.toElement();
    }
    ui->label_24->setText(moviematches.firstChild().toText().data());
 
}
}
noeud = noeud.nextSibling(); //passe ? la “movie” suivante
}
(si vous avez des suggestions également concernant mon parsage du xml qui doit pas être super bien codé, je suis preneur :p)

Merci