Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2722 connectés 

  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  XML -> Array = Décalage :'(

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

XML -> Array = Décalage :'(

n°852305
Inekman
Posté le 17-09-2004 à 00:31:38  profilanswer
 

Bonsoir tout le monde,
 
Je souhaite charger un contenu XML dans 2 Array différents.
 
Après avoir galéré 4 ou 5 heures, j'ai trouvé sur le site un exemple de code qui m'a bien fait avancer. Je l'ai adapaté à mon besoin et je me trouve nez à nez avec un problème dont je ne saurai vous dire l'origine.
 
C'est pourquoi je souhaite que vous m'aidiez.
 
Voici mon fichier "data.xml" :
 

Code :
  1. <SOUNDS>
  2. <SWF id="1" nom="L'Odyssée suit son cours" file="odyssee"/>
  3. <SWF id="2" nom="Underground Connexion" file="underground"/>
  4. <SWF id="3" nom="Sérieux dans nos affaires" file="serieux"/>
  5. <SWF id="4" nom="Classik" file="classik"/>
  6. <SWF id="5" nom="Shoota Babylone" file="babylone"/>
  7. </SOUNDS>


 
Voici le code que j'utilise :
 

Code :
  1. stop();
  2. liste = new Array();
  3. z_name = new Array();
  4. z_file = new Array();
  5. base_XML = new XML();
  6. base_XML.onLoad = traiteXML;
  7. base_XML.load("data.xml" );
  8. function traiteXML (){
  9. //on charge le contenu de notre XML
  10. liste = base_XML.firstChild.childNodes;
  11. for(i=0; i<liste.length; i++)
  12. {
  13. z_name[i] = liste[i].attributes.nom;
  14. }
  15. for(i=0; i<liste.length; i++)
  16. {
  17. z_file[i] = "sample_" + liste[i].attributes.file;
  18. }
  19. }


 
Le problème c'est q'il y'a une ligne vide entre chaque élément de mes tableaux :
 
z_name contient ceci :

[0] :  
[1] : L'Odyssée suit son cours
[2] :
[3] : Underground Connexion
[4] :
[5] : Sérieux dans nos affaires
[6] :
[7] : Classik
[8] :
[9] : Shoota Babylone
[10] :


 
idem pour z_file mais avec les données qui se trouvent dans la variable "file".
 
Je ne parviens pas à trouver l'origine du problème même si je soupçonne cette ligne

liste = base_XML.firstChild.childNodes;


 
Pouvez-vous m'aider à résoudre ce problème s'il vous plait.
 
Merci à tous ceux/celles qui liront et/ou répondront à mon message.
 
Inekman.
 
ps : demandez des précisions si c'est mal expliqué.


Message édité par Inekman le 17-09-2004 à 00:33:25
mood
Publicité
Posté le 17-09-2004 à 00:31:38  profilanswer
 

n°852335
Mr Mala
Posté le 17-09-2004 à 02:17:19  profilanswer
 

Vois avec  

Code :
  1. base_XML = new XML();
  2. base_XML.ignoreWhite = true;
  3. base_XML.onLoad = traiteXML;
  4. base_XML.load("data.xml" );


 
( http://www.macromedia.com/support/ [...] ry840.html )


Message édité par Mr Mala le 17-09-2004 à 02:20:05
n°852763
Inekman
Posté le 17-09-2004 à 16:52:09  profilanswer
 

Big big big MERCI Mr Mala. Ca roule nikel chrome.
 
Big up.
 
Inekman.

n°852764
Mr Mala
Posté le 17-09-2004 à 16:53:07  profilanswer
 

inekman a écrit :

Big big big MERCI Mr Mala. Ca roule nikel chrome.
 
Big up.
 
Inekman.


 
Heuuu oui oui de rien mais t'as compris pourquoi au moins ? :p

n°852821
Inekman
Posté le 17-09-2004 à 18:00:43  profilanswer
 

et bien apparement il insérait des lignes vides, dont j'ignore l'origine, et la valeur "true" placée dans la propriété ignoreWhite résoud ce problème :)
 
Que dois-je comprendre d'autre ?

n°852826
Mr Mala
Posté le 17-09-2004 à 18:11:15  profilanswer
 

Ben d'OU venaient ces lignes vides ! ... t'as été lire la doc de ignoreWhite ? :p
Allez, un indice : apparament, tu a créé ton fichier XML sous Win ... si tu l'avais édité sous Unix/Linux, tu n'aurais pas eu ce problème ...

n°852830
Inekman
Posté le 17-09-2004 à 18:21:25  profilanswer
 

serait-ce un problème d'Unicode ou autre ? :)

n°852833
Mr Mala
Posté le 17-09-2004 à 18:29:01  profilanswer
 

Perduuuu :D
C'est le problème des CR-LF ( carriage return + line feed )à la fin des lignes d'un texte sous Win ... :p

n°852854
Inekman
Posté le 17-09-2004 à 18:50:17  profilanswer
 

ouuuiinn :)
 
par contre j'ai un autre prob là...Un swf est chargé dans le level10 et je voudrai le changer mais je ne retrouve plus cette ligne...
 
Y'a une technique pour faire une recherche dans le code ? C'est trop bizarre :)

n°852878
Mr Mala
Posté le 17-09-2004 à 19:29:15  profilanswer
 

Tu veux dire rechercher globalement dans tous les AS de toutes les frames de ton anim ???
houlà je crois pas !
Faut que tu passes en revue tout tes actionscripts pour retrouver la ligne qui le crée !

mood
Publicité
Posté le 17-09-2004 à 19:29:15  profilanswer
 

n°852891
Inekman
Posté le 17-09-2004 à 19:48:42  profilanswer
 

youpla boom, g trouvé ;)
 
Merci pour tout Mr Mala. Tu viens de me faire avancer un taf qui n'avancait pas depuis 1 an et demi.
 
Big up 4 Eternity man.
 
Inekman.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  XML -> Array = Décalage :'(

 

Sujets relatifs
Est il possible d'utiliser sort 2 fois de suites sur le meme array ?Accent et xml
url dans fichier xml découpé en 3 partie, pourquoi ?réparer un ficihier XML corrompu
charger un document XML sous IISXLS->XML->XLS
Comment envoyer un array ?[XML] Attribut ou élément ? Qu'est ce qui est le plus logique ?
JDOM XML[XPath / Java] Requete pour récupérer un bloc XML
Plus de sujets relatifs à : XML -> Array = Décalage :'(


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR