Gérer le XML dans Flash
CHAPITRE 13
309
Comme vous pouvez le constater, la technique de recherche par attribut est aussi simple
que celle par nœud. Vous commencez par saisir le début d’une ligne d’instruction classique,
comme si vous vous apprêtiez à indiquer le chemin qui mène à un nœud, mais la fin de la
ligne d’instruction se termine par une instruction entre parenthèses :
(@nom=="Le Papillon");
Puisque nous évaluons la valeur d’un attribut, il est impératif d’utiliser le signe arobase.
Vous précisez ensuite l’opérateur de comparaison et la valeur à évaluer.
zoneAffichage.text = fichierXML.Film(@nom=="Le Papillon");
Lorsque vous parvenez à trouver un nœud, vous pouvez alors le parcourir en y ajoutant
des noms de nœuds ou d’attributs comme dans les exemples ci-dessous.
Cette ligne permet d’afficher Michel SERRAULT.
zoneAffichage.text = fichierXML.Film.(@nom=="Le Papillon").ActeurPrincipal;
Cette ligne permet d’afficher Philippe MUYL.
zoneAffichage.text = fichierXML.Film.(@nom=="Le Papillon").Realisateur;
Cette ligne permet d’afficher la lettre M pour Masculin.
zoneAffichage.text = fichierXML.Film.(@nom=="Le Papillon").ActeurPrincipal.@sexe;
Cette ligne permet d’afficher 2002.
zoneAffichage.text = fichierXML.Film.(@nom=="Le Papillon").Annee;
Voici un exemple de script complet :
var fichierXML:XML;
var chargeurDonnees:URLLoader = new URLLoader();
var adresseFichierXML:URLRequest = new URLRequest("cinema.xml");
function onComplete(event:Event):void {
fichierXML = new XML(chargeurDonnees.data);
btAttribut.addEventListener(MouseEvent.CLICK,lireAttribut);
}
chargeurDonnees.load(adresseFichierXML);
chargeurDonnees.addEventListener(Event.COMPLETE, onComplete);
Attention
Vous devez faire précéder votre condition de recherche, placée entre parenthèses, par un point. La ligne
ci-dessous renverrait donc une erreur.
Rappel
Les fichiers de référence de cette animation sont Chapitre13/xml3.fla et Chapitre13/cinema.xml.
Précédent

- 337/426

Suivant