Zona HTML Zona Java Zona PHP Zona ASP Zona Bases de datos
Inicio > Foros > XML > Como se usa el SAX y el DOM en xml Quiero ejemplos por favor
-Foros de debate

XML
Lista de foros | Lista de mensajes de este foro

Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.

Como se usa el SAX y el DOM en xml Quiero ejemplos por favor
Enviado por juan el día 1 de abril de 2004

Necesito saber como se utiliza dom y sax con xml; por favor necesitaría ejemplos sencillos de ambas cosas. Muchas gracias

 
Re: Como se usa el SAX y el DOM en xml Quiero ejemplos por favor
Enviado por Davinia el día 1 de abril de 2004

Hola,
yo solo se usar DOM.
Para probar, puedes empezar con un pequeño main(), por ejemplo:

int main()
{
IXMLDOMDocument2Ptr pXMLDom;
IXMLDOMElementPtr ElementPtr;
IXMLDOMNodeListPtr pNodeChildren = NULL;
IXMLDOMNodePtr pNode = NULL;
HRESULT hr;

CoInitialize(NULL);

hr = pXMLDom.CreateInstance(__uuidof(DOMDocument40));
if (FAILED(hr))
{
printf("Failed to instantiate DOMDocument40 class\n");
return -1;
}
pXMLDom->async = VARIANT_FALSE;

if ( pXMLDom->load("miejemplo.xml") != VARIANT_TRUE)
{
printf("Failed load xml data from file.\n%s\n", (LPCSTR)pXMLDom->parseError->Getreason());
return -1;
}
ElementPtr = pXMLDom->documentElement;
MessageBox(NULL, (LPCSTR)ElementPtr->xml, "Document from its root", MB_OK); /*para coger comentarios*/
pNodeChildrenSignml = ElementPtr->childNodes;

pXMLDom.Release();

ElementPtr.Release(); /*para coger comentarios*/

pNodeChildrenSignml.Release();
pNodeSign_aux.Release();

CoUninitialize();

return 1;
}

 

Re: Como se usa el SAX y el DOM en xml Quiero ejemplos por favor
Enviado por Davinia el día 1 de abril de 2004

Hola,
yo solo se usar DOM.
Para probar, puedes empezar con un pequeño main(). Te pongo este ejemplo, para que (si quieres y puedes) lo pruebes en VC++ con MSXML4.0 y veras lo que devuelve cada cosa en el MessageBox. De todas formas, la ayuda del MSXML explica muy bien SAX y DOM. Este ejemplo es usando Smart Pointers, que es mas intuitivo que sin usarlos.
Espero que te ayude

int main()
{
IXMLDOMDocument2Ptr pXMLDom;
IXMLDOMElementPtr ElementPtr;
IXMLDOMNodeListPtr pNodeChildren = NULL;
IXMLDOMNodePtr pNode = NULL;
HRESULT hr;

CoInitialize(NULL);

hr = pXMLDom.CreateInstance(__uuidof(DOMDocument40));
if (FAILED(hr))
{
printf("Failed to instantiate DOMDocument40 class\n");
return -1;
}
pXMLDom->async = VARIANT_FALSE;

if ( pXMLDom->load("miejemplo.xml") != VARIANT_TRUE)
{
printf("Failed load xml data from file.\n%s\n", (LPCSTR)pXMLDom->parseError->Getreason());
return -1;
}
ElementPtr = pXMLDom->documentElement;
MessageBox(NULL, (LPCSTR)ElementPtr->xml, "Document from its root", MB_OK);
pNodeChildren = ElementPtr->childNodes;
for (int i=0; i < pNodeChildren->length; i++)
{
pNode = pNodeChildren->item[i];
MessageBox(NULL, (LPCSTR)pNode ->xml, "Child of pNode", MB_OK);
}
pXMLDom.Release();
ElementPtr.Release();
pNodeChildren.Release();
pNode.Release();

CoUninitialize();

return 1;
}

 
Re: Re: Como se usa el SAX y el DOM en xml Quiero ejemplos por favor
Enviado por Davinia el día 1 de abril de 2004

Olvidar el primer mail, me colé

 



Tienda
Patrocinados
 

Copyright © 1999-2006 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network