Ver Mensaje Individual
  #1  
Antiguo 23-02-2019
Muriel Muriel is offline
Miembro
 
Registrado: ago 2008
Posts: 19
Reputación: 0
Muriel Va por buen camino
Smile Crear archivo xml con delphi

Hola compañeros de foro

Les comento que estoy tratando de generar un archivo XML con Delphi 7, ya lo logre hasta cierto punto, funciona bien, pero lo que no sé cómo hacer es esto <complemento xsi:nil="true"/> en Delphi para que el código XML quede así. Abajo des muestro mi código.

Espero que me puedan ayudar.

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComObj, xmldom, XMLIntf, msxmldom, XMLDoc;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
Var
   XML : IXMLDOCUMENT;
    Registro, Datos: IXMLNODE;
begin
    XML := NewXMLDocument;
    XML.Encoding := 'UTF-8';
    XML.Options := [doNodeAutoIndent];

    Registro := XML.AddChild('ClientesXML');
    Registro.Attributes['xsi:noNamespaceSchemaLocation']:= 'ClientesXML.xsd';
    Registro.Attributes['xmlns:xsi']:= 'w1.com/2019/XMLSchema-instance'; 

    Datos := Registro.AddChild('cliente');

    Datos.AddChild('nombre').Text := 'JUAN PERES FICTICIO';
    Datos.AddChild('edad').Text := '25';
    Datos.AddChild('numeroDocumenta').Text := '123456';
    Datos.AddChild('complemento'); //esto debe quedar asi 
                                              //lo que no se como hacer

    Datos := Registro.AddChild('detalles');

    Datos.AddChild('direccion').Text := 'Calle Valle Hermoso #123';
    Datos.AddChild('estadoCivil'); //esto debe quedar asi 
    Datos.AddChild('etcEtc').Text := '21312';

    XML.SaveToFile( ExtractFilePath( Application.ExeName ) + 'Cientes.xml' );
end;

 end.

Con esto el XML me queda asi

Código:
<?xml version="1.0" encoding="UTF-8"?>
<ClientesXML xmlns:xsi="estoLoBorre" xsi:noNamespaceSchemaLocation="ClientesXML.xsd"><cliente><nombre>JUAN PERES FICTICIO</nombre><edad>25</edad><numeroDocumenta>123456</numeroDocumenta><complemento/></cliente><detalles><direccion>Calle Valle Hermoso #123</direccion><estadoCivil/><etcEtc>21312</etcEtc></detalles></ClientesXML> yo nesesito que sea ai
<?xml version="1.0" encoding="UTF-8"?>
<ClientesXML xmlns:xsi="estoLoBorre" xsi:noNamespaceSchemaLocation="ClientesXML.xsd"><cliente><nombre>JUAN PERES FICTICIO</nombre><edad>25</edad><numeroDocumenta>123456</numeroDocumenta><complemento xsi:nil="true"/></cliente><detalles><direccion>Calle Valle Hermoso #123</direccion><estadoCivil xsi:nil="true"/><etcEtc>21312</etcEtc></detalles></ClientesXML>

Última edición por dec fecha: 23-02-2019 a las 17:40:17. Razón: Poner etiquetas DELPHI y CODE
Responder Con Cita