¡Hola!
Je pense que je connais déjà la réponse mais je tente quand même le coup..sait on jamais...
Je possede différents fichiers xml...avec différentes syntaxes..
Je souhaite charger ces fichiers grâce à l'httpservice pour ensuite les intégrer dans un tree...
Pour des xml basiques, je n'ai aucun probleme, seulement avec les autres, les trees sont...horribles...
En effet, là où un xml basique comme celui ci :
me donne un arbre comme celà :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <?xml version='1.0' encoding='UTF-8'?> <schema elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <element name="Airfares-form"> <element name="Dept" /> <element name="Dest" /> <element name="DepartDate" /> <element name="ReturnDate" /> <element name="name" /> <element name="customeremail" /> <element name="phone" /> </element> </schema>
alors qu'un xml comme celà :
Me donne un arbre comme celui là :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <?xml version='1.0' encoding='UTF-8'?> <xs:schema elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="Airfares-form"> <xs:element name="Dept" /> <xs:element name="Dest" /> <xs:element name="DepartDate" /> <xs:element name="ReturnDate" /> <xs:element name="name" /> <xs:element name="customeremail" /> <xs:element name="phone" /> </xs:element> </xs:schema>
On peut remarquer que la seule différence entre les deux xml...est l'ajout du "xs:"...qui fait "bugguer" le travail de l'httpservice..
J'en viens donc à ma demande...
J'aimerais savoir s'il est possible de modifier directement l'xml (sans ouvrir le fichier xml) à travers flex
J'ai pensé à un code comme ceci, mais il ne semble pas marcher...
Donc la fonction va prendre les fichiers xml contenu dans le tableau un par un...et va tester s'il y a ces lettres "xs:" et si c'est le cas les supprimer...!!
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 private var cards:ArrayCollection; private function init():void { cards = new ArrayCollection(['hotelsvalued.com.xsd', 'data.xml', 'where-to-stay.com.xsd', 'schemas/travel/travel1.xsd', 'schemas/webForm12/betus.com.xml.xsd']); for (var i:int; i<cards.length; i++) { for each(var result:XMLNode in cards[i]) { if(result.nodeValue == "<xs:element>") {cards[i].nodeValue = "<element>"} } } }
Je précise encore que j'aimerai le faire sans avoir a ouvrir le fichier xml...parce que j'en possede une centaine, donc je me vois mal les faire un par un...!!
Merci d'avance!!
Partager