Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fredrabelo

AS3+XML - leitura de xml aleatorio indefinidamente (laco while)

Recommended Posts

Seguinte galera,

pretendo fazer um api para leitura de qualquer xml, independente de numero de nos, filhos, nome ou atributos.

Eu basicamente ja consegui fazer quase tudo apartir de um tutorial que segui.

 

O problema é que meu sisteminha so consegue chegar até o quarto nível de um xml. Isto porque foi usado 3 fors aninhados no actionscript.

 

exemplo de como está:

for ($i=0; $i<MeuXML.firstChild.childNodes.length; $i++) {

for ($x=0; $x<MeuXML.firstChild.childNodes[$i].childNodes.length; $x++){

[...]

}

}

 

Mas não é isto que quero.

Quero que enquanto haja filhos, um laco WHILE(HOUVER FILHOS) va executando e entrando, criando novos childNodes[].childNodes.childNodes[] ...

indefinidamente.

Este é examente o meu problema, como fazer ele ir entrando indefinidamente nos nos.

 

Sou novo em AS, apesar de programar a bastante tempo com C e C++ e a sintaxe ser parecida.

 

Obrigado a quem ajudar!

Compartilhar este post


Link para o post
Compartilhar em outros sites

está fazendo em AS2?

 

o AS3 permite o uso da sintaxe E4X para xml. E retorna um objeto XMLList para nós complexos, além de possuir métodos para verificação como o hasComplexContent e o hasSimpleContent.

 

e ao invés de aninhar os loops, poderia usar recursividade =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

ja li um monte de coisa aqui da XMLLIST mas nao achei nada que possa me ajudar ainda.

eu quero fazer para que enquando houver filho, ele va entrando e mostrando os nos, colocando mais: xml.children() [...]

Compartilhar este post


Link para o post
Compartilhar em outros sites

olhou os métodos que falei? eles retornam valores booleanos, justamente se o XML possui filhos ou não.

 

sobre os atributos, também é usar o metodo attributes e verificar o XML que ele retorna.

 

como disse, você pode simplificar tudo usando recursividade.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.