Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/10/2007, 06:43
Gugu_Tata
 
Fecha de Ingreso: agosto-2004
Mensajes: 182
Antigüedad: 20 años, 3 meses
Puntos: 1
Estoy leyendo un XML pero incorrectamente

Por un lado este textos.xml

Código:
<?xml version="1.0" encoding="iso-8859-1" ?>
<frases>
     <texto>a</texto>
     <texto>b</texto>
     <texto>c</texto>
     <texto>d</texto>
     <texto>e</texto>
     <texto>f</texto>
     <texto>g</texto>
     <texto>h</texto>
     <texto>i</texto>
     <texto>j</texto>
     <texto>k</texto>
     <texto>l</texto>
     <texto>m</texto>
     <texto>n</texto>
     <texto>o</texto>
     <texto>p</texto>
     <texto>q</texto>
     <texto>r</texto>
     <texto>s</texto>
     <texto>t</texto>
     <texto>u</texto>
     <texto>v</texto>
     <texto>w</texto>
     <texto>x</texto>
     <texto>y</texto>
     <texto>z</texto>
</frases>
Y por otro lado, dentro del flash 8, el siguiente código de action script ...

Código:
urlXML = new XML();
urlXML.onLoad = inicioXML;
urlXML.load("textos.xml");

function inicioXML()
{ 
numNodos = 0;
todoXML = new XML;
frases = new Array
todoXML = this.firstChild.nextSibling;
	if (todoXML.nodeName.toLowerCase() == "frases")
	{
	frases = todoXML.childNodes;
	numNodos = frases.length;
	trace(numNodos);
	indice = Math.ceil(Math.random()*26);
	trace(indice);
	fraseTexto = frases[indice].firstChild.nodeValue;
	trace(fraseTexto);
	}
}
Ahora el problema es que el trace de numNodos me dice que hay 53 campos, siendo que hay 26 algo que no entiendo.

No obstante, por otro lado, con lo mismo, pero con un XML con otros datos, donde hay palabras sueltas, o frases, o algunas palabras con tildes, me dice el numNodos que tengo 4 campos, siendo que también tengo 26 ...

¿Cual es entonces el error que tengo para que no me esté leyendo bien el XML?

No obstante solamente quiero leer el XML, y que aleatoriamente me seleccione una de las líneas de dicho XML, así que si alguien tiene una forma más sencilla, pues también acepto nuevas propuestas.

Gracias por vuestro interés, un saludo.