Professional Documents
Culture Documents
<name>John Doe</name>
<email>j@doe.com</email>
<phone>555 12345</phone>
</contact>
// SAX
virtual void
characters (const string& s)
{
cout << s;
}
};
virtual void
email (const string& e)
{
cout << e << ", ";
}
virtual void
phone (const string& p)
{
cout << p << endl;
}
};
// DOM
DOMElement* c = ...
DOMNodeList* l;
l = c->getElementsByTagName ("name");
DOMNode* name = l->item (0);
l = c->getElementsByTagName ("email");
DOMNode* email = l->item (0);
l = c->getElementsByTagName ("phone");
DOMNode* phone = l->item (0);
Contact c = ...
Un archivo XML se compone de etiquetas que a su vez pueden contener mas etiquetas o
valores:
Además, las etiquetas también pueden tener atributos, que otorgan mayor información a la
etiqueta que los contiene, en el ejemplo sería “edad”:
<?xml version="1.0" encoding="UTF-8" ?>
<personas>
<nombre edad="34">Pablo</nombre>
<nombre edad="35">Sara</nombre>
<nombre edad="45">Fulanito</nombre>
</personas>
Usando de ejemplo el xml anterior, para leer sus atributos y etiquetas podriamos usar:
using System.Xml
XmlDocument xDoc = new XmlDocument();
xDoc.Load("c:/personas.xml");
XmlNodeList xPersonas =
xDoc.GetElementsByTagName("personas");
XmlNodeList xLista =
((XmlElement)xPersonas[0]).GetElementsByTagName("nombre");
if (File.Exists("c:/personas.xml"))
{
...
}