Creación XML desde C #

Antes de comenzar abundaremos algunos conceptos básicos para la creación de un XML desde C #.

Un XML bien formado consiste en una serie de etiquetas llamadas elementos y modificadores llamados atributos, las etiquetas pueden estar añadidas las unas de las otras, pero todas las etiquetas para que sea bien formado tienen la obligación de ser cerrada. Un ejemplo a esta descripción tenemos el siguiente código:




     
          
               Nombre del remitente
                Correo del remitente 
          
          
               Nombre del destinatario
               Correo del destinatario
          
          
               
                    Este es mi documento con una estructura muy sencilla 
                    no contiene atributos ni entidades...
               
               
                    Este es mi documento con una estructura muy sencilla 
                    no contiene atributos ni entidades...
               
          
     

La primera línea donde se establece la versión del documento XML que utilizaremos y la codificación que establecemos, Véase el siguiente enlace para obtener más información http://www.w3.org/International/O-charset.es.php.

Una vez comprendido el ejemplo anterior comenzaremos creando un nuevo proyecto e integrando las librerías que se deben incluir en la clase que generaremos el código:

  using System.Xml;
  using System.Xml.XPath;
  using System.Text;

Al momento de escribir los datos utilizaremos XmlTextWriter que hereda de la clase XmlWriter, debemos realizar la instancia el objeto que utilizaremos:

  XmlTextWriter Writer = new XmlTextWriter(Ruta, Encoding.Unicode);

Una vez realizado el paso anterior podremos utilizar muchos métodos que contiene esta clase, en los que más abundaremos serán los siguientes:

Writer.WriteStartDocument(); = Realiza la declaración para inicializar el XML.

Writer.WriteStartElement(“ ”) = Método que escribe el nodo Principal del XML.

Writer.WriteElementString(“ ”) = Método que escribe el contenido de un elemento.

Writer.WriteEndElement(); = Método que finaliza el nodo en el cual se esta trabajando.

Writer.Flush(); = Método que escribe todo el contenido almacenado en un documento XML.

Quizás exista la consulta entre ustedes de “Como puedo realizar un XML con estos métodos”, Aclararemos esto antes de continuar, Un ejemplo este ejemplo XML:


 
 
 
 Víctor Riquelme  

Gustavo Bustos
 	Don Corleone
 
 
 Película de mafias sicilianas  

A continuación veremos un método de como utilizar los conceptos vistos anteriormente y utilizarlos para crear un XML igual al mostrado en el ejemplo:

  public void EscribirXml(){	

    string Ruta = "Ruta donde almacenaremos el XML, finalizada en “/nombre.xml”";	

    XmlTextWriter Writer = new XmlTextWriter(Ruta, Encoding.Unicode);
    {
        Writer.WriteStartDocument();

        //Estos los utilizaremos como parte de la configuración del XML			
        Writer.Formatting = Formatting.Indented;
        Writer.Indentation = 5;

        Writer.WriteStartElement("PELICULA");				
        Writer.WriteStartElement("PERSONAL");
        Writer.WriteElementString("DIRECTOR", "Georgie Lucas");
        Writer.WriteStartElement("INTERPRETE");
        Writer.WriteElementString("NOMBRE", "GMarlon Brando");
        Writer.WriteElementString("PERSONAJE", "Don Corleone");
        Writer.WriteEndElement();
        Writer.WriteEndElement();
        Writer.WriteElementString("ARGUMENTO", "Película de mafias sicilianas");
        Writer.WriteEndElement();
        Writer.WriteEndDocument();
        Writer.Flush();    
     }
  }

Una vez que estos pasos estén completado podemos realizar la instancia de nuestro método en la clase principal del proyecto utilizando:

class MainClass
{
	public static void Main (string[] args)
	{
            EscribirXml();
	}
}

Lo cual luego de ejecutarse se obtendrá como resultado un archivo XML en la ruta que ustedes mismos especificaron.

Saludos.

También te podría gustar...

Deja una respuesta

Tu dirección de correo electrónico no será publicada.