Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS3
AS3 Questions relatives à la programmation ActionScript 3 (Cours AS3)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/03/2008, 10h29   #1
Invité de passage
 
Inscription : mars 2008
Messages : 3
Détails du profil
Informations forums :
Inscription : mars 2008
Messages : 3
Points : 1
Points : 1
Par défaut xmlns bloque la lecture d'un fichier XML en as3

Bonjour,

Je souhaite parcourir, en AS3, une playlist en XML utilsant le format XSPF et récupérer les titres pour un lecteur mp3 (format qui semble être un standard pour les playlistes).

http://www.xspf.org/

Exemple de fichier XSPF
<?xml version="1.0" encoding="utf_8" ?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
<trackList>
<track><location>http://xxxxxxxx/audio/blueMelody.mp3</location></track>
<track><location>http://xxxxxxxx/audio/youCant.mp3</location></track>
</trackList>
</playlist>


Si je retire xmlns="http://xspf.org/ns/0/", je peux récupérer les données en utilsant :

Extrait du code utilisé
...

chargeur.load(new URLRequest("playList.xml"));
chargeur.dataFormat = URLLoaderDataFormat.TEXT;
chargeur.addEventListener(Event.COMPLETE, traiterXML);

...

private function traiterXML(e:Event):void {
var xmlObj:XML = new XML(e.target.data);

trace(xmlObj..location[0].text());
trace(xmlObj..location[1].text());
}


Sinon, je n'arrive pas à récupérer les données sauf en faisant :
trace(xmlObj.children()[0].children()[0].children()[0]);
trace(xmlObj.children()[0].children()[1].children()[0]);




Je rencontre le même problème lorsque je veux lire un fil RSS.


Quelqu'un a-t-il une idée de l'origine de ce problème et comment le résoudre ?

Merci pour votre aide.
line6 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/03/2008, 11h53   #2
Invité de passage
 
Inscription : mars 2008
Messages : 3
Détails du profil
Informations forums :
Inscription : mars 2008
Messages : 3
Points : 1
Points : 1
Par défaut espace de temps

Je prends 5 mn pour donner la réponse puisque je viens de l'obtenir par une autre source.

Il faut indiquer l'espace de nom à utiliser :

private namespace xmlns="http://xspf.org/ns/0/";

...

private function traiterXML(e:Event):void {
var xmlObj:XML = new XML(e.target.data);
use namespace xmlns;
trace(xmlObj..location[0].text());
trace(xmlObj..location[1].text());
}

line6
line6 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h57.


 
 
 
 
Partenaires

Hébergement Web