📂XmlDocument

Cargar XML: Puedes cargar el contenido de un archivo XML en un objeto XmlDocument para manipularlo:

XmlDocument doc = new XmlDocument();
doc.Load("ruta-al-archivo.xml");

Seleccionar Nodos: Puedes seleccionar nodos específicos utilizando SelectSingleNode o SelectNodes con expresiones XPath:

XmlNode rootNode = doc.SelectSingleNode("/types");
XmlNodeList typeNodes = doc.SelectNodes("//type");

Iterar sobre Nodos: Puedes iterar sobre una lista de nodos y trabajar con cada uno de ellos:

foreach (XmlNode typeNode in typeNodes)
{
    // Hacer algo con typeNode...
}

InnerText se usa para leer el contenido de texto de un elemento.

Acceder a Atributos y Subnodos: Puedes acceder a los atributos de un nodo y a sus nodos hijos de forma directa:

string name = typeNode.Attributes["name"].Value;
XmlNode nominalNode = typeNode.SelectSingleNode("nominal");

Editar el Documento: Puedes crear y agregar nuevos nodos o modificar los existentes:

XmlElement newType = doc.CreateElement("type");
newType.SetAttribute("name", "nuevoTipo");
rootNode.AppendChild(newType);

Guardar Cambios: Después de realizar cambios en el documento, puedes guardar los cambios en el archivo original o en uno nuevo:

doc.Save("ruta-al-archivo-modificado.xml");

Filtrar Contenido: Puedes utilizar XPath para filtrar nodos específicos basados en criterios complejos:

XmlNodeList filteredNodes = doc.SelectNodes("//type[nominal > 10]");

Manejo de Espacios de Nombres: Si el XML tiene espacios de nombres, tendrás que gestionarlos al seleccionar nodos con XPath.

🧰 Herramientas Adicionales

  • XmlTextWriter/XmlWriter: Para escribir en documentos XML de forma estructurada y eficiente.

  • XDocument y LINQ to XML: Para un modelo de programación más moderno y flexible basado en LINQ.

Última actualización