Amigos :
Tengo un archivo XML, el cual necesito leer ciertos datos del cuerpo de este archivo desde vb6.
agradeciendo respuesta, me despido


Leer un Archivo Xml desde Visual Basic Amigos : Tengo un archivo XML, el cual necesito leer ciertos datos del cuerpo de este archivo desde vb6. agradeciendo respuesta, me despido |


Bueno lo primero seria agregar la referencia msxml 2.0 (referencias --> Microsoft XML, version 2.0) Luego dimensionas el parser(analizador de xml) como: Dim miXML As New MSXML.DOMDocument Bueno, pongamos que tengo el siguiente xml <?xml version = '1.0' encoding = 'ISO-8859-1'?> <ROWSET> <ROW num="1"> <COD>CQPDI138</COD> <REFPROV>254873-B21</REFPROV> <DESCRIP>DIMM 512MB SDRAM ECC 133Mhz</DESCRIP> <PRECIO>256,41</PRECIO> </ROW> <ROW num="2"> <COD>CQPSE030</COD> <REFPROV>230467-021</REFPROV> <DESCRIP>TARJETA DE MEMORIA 32 MB IPAQ</DESCRIP> <PRECIO>50,76</PRECIO> </ROW> </ROWSET> Pues tenemos estas instrucciones: miXML.documentElement.childNodes.Length --> nos daria el numero total de productos (en este caso dos) es decir dentro de rowset cuantos elementos ROW hay miXML.documentElement.childNodes(indiceX).childNod es(indiceY).childNodes(0).xml --> aqui accederia al producto indiceX (empezando desde 0) , a el nodo indiceY (tambien empezando desde 0) y luego childnodes(0).xml para acceder al contenido de cada elementos un ejemplo de bucle para recorrer for i=0 to miXML.documentElement.childNodes.Length for j=0 to 3 debug.print miXML.documentElement.childNodes(i).childNodes(j). childNodes(0).xml next j next i Es bastante lento si tienes muchos registros por eso yo uso un coponente activex (chilkat) |


Re: Leer un Archivo Xml desde Visual Basic He probado tu parser le encuentro un problema que no se solucionar cuando hay un childnodes vacio siempre me da error .... Variable tipo Objet ...... en XML_Node.childNodes(i).childNodes(j).childNodes(0) .xml He hecho entre otras muchas cosas el siguiente if para intentar solucionarlo sin exito sXML = IIf((XML_Node.childNodes(i).childNodes(j).childNod es(0).Text) = vbNullString, "---", XML_Node.childNodes(i).childNodes(j).childNodes(0) .Text) ¿Podrias decirme como solucionar el problema? Gracias |