Como crear un documento XML en C#


Es muy sencillo, por ahí me preguntaban como, aquí tienen el código:

protected void CrearDocumentoXML()
        {
            XDocument miXML = new XDocument(
            new XDeclaration("1.0", "utf-8", "yes"),
            new XComment("Lista de Alumnos"),
            new XElement("Alumnos",
                                new XElement("Alumno",
                                    new XAttribute("NoControl", "05231104"),
                                    new XElement("Nombre", "Edison García"),
                                    new XElement("Semestre", "7")),

                                 new XElement("Alumno",
                                    new XAttribute("NoControl", "05231106"),
                                    new XElement("Nombre", "Abraham Gomez García"),
                                    new XElement("Semestre", "9")),

                                new XElement("Alumno",
                                    new XAttribute("NoControl", "05231108"),
                                    new XElement("Nombre", "Alejandre Carvajal"),
                                    new XElement("Semestre", "7")),

                                new XElement("Alumno",
                                    new XAttribute("NoControl", "06231110"),
                                    new XElement("Nombre", "Luis Armando"),
                                    new XElement("Semestre", "10"))                  
                   )
            );

Al final lo guardan en la dirección que quieran:

            miXML.Save(@"c:\miXML.xml");      

 

miXMLinCsharp

miXMLinCsharp01

Edison Daniel García Chiñas
Microsoft Student Partner | México

17 Comments

  1. Estoy casi seguro, que el error que le marca es por que no cerraste la llave en tu codigo…
    despues del miXML.Save(@”c:\miXML.xml”);

    cierra el bloque con “}” (sin comillas claro!)

    el codigo jala perfecto… y si es vista… asegurate que tengas permisos de escribir en la carpeta donde estás guardando tu XML…

    saludos!

    Reply

  2. Hola use tu ejemplo con algunas modificaciones. Yo tomo los varoles de textbox como lo siguiente:
    System.Xml.Linq.XDocument miXML = new XDocument(new XDeclaration(“1.0”, “utf-8”, “yes”),
    new XComment(“Lista de Personal”),
    new XElement(“Personas”,
    new XElement(“Cliente”,
    new XElement(“Nombre”, txtNombre.Text),
    new XElement(“Apellido”, txtApellido.Text),
    new XElement(“Edad”, txtEdad.Text.ToString()),
    new XElement(“Domicilio”, txtDomicilio.Text))
    )
    );
    miXML.Save(@”c:\miXML.xml”);

    El resultado es un XML asi:

    Esmeralda
    Becerra
    25
    dcff

    Mi duda es la siguiente, como puedo isertar nuevos elementos al XML cada vez que escribo los valores en las cajas de texto de mi formulario. Ya que cada vez que doy click en un boton para crear el XML, me lo sobreescribe con los nuevos valores que inserte pero no me los agrega. Quiero un resultado como el que sigue:

    Esmeralda
    Becerra
    25
    dcff

    Carlos
    Frias
    35
    xxxxx

    Alguna sugerencia??

    Reply

    1. hola amigo supongoo q lograste hacer lo que estas preguntando aqui… me podrias indicar como lo hiciste?? intento hacer examente lo mismo que tu

      NECESITO AGREGAR NUEVOS DATOS no sobreescribir los existentes si puedes ayudarme gracias! o me escribes al correo =)

      Reply

    2. Puedes meter los elementos en un arreglo, y al sobreescribirlos se sobreescribiran todos….
      Hice lo mismo que tu y me dio buen resultados.
      Si quieres puedo pasarte el codigo

      Reply

  3. Hola,

    me da error al intentar almacenar el fichero xml. El error es el siguiente:

    “Acceso denegado a la ruta de acceso ‘c:\miXML.xml’.”

    Supongo que tendré que dar permisos a algún usuario…. pero a qué usuario? Cómo lo hago?

    Muchas gracias,

    Un saludo

    Reply

  4. Hola por favor necesito ayuda con un xml..
    quiero que tenga un formato asi..

    ” 0.00 ”
    ” 0.9000 ”

    claro esta sin las comillas iniciales y finales

    gracias

    Reply

  5. podrian ayudarme, el codigo arriba esta muy bien, solo que necesito ponerle una referencia de tipo esquema de apoyo, me ayudarian a hacerlo, les agradezco….

    Reply

  6. No pedimos las cosas hechas, pero si se da un ejemplo en donde se trabaja con flujos de datos y hay acceder al disco hay que tener en cuenta las cuestiones de seguridad y de Accesos, yo no lo pude hacer andar, me salta error de “Acceso denegado”, y no se como dar acceso programaticamente, por lo tanto sigo buscando en otro lado, no me sirvio…

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s