
Índice
Introdução
Neste post iremos abordar sobre criação e manipulação de estruturas XML em Delphi.
O XML (Extensible Markup Language) é amplamente utilizado para armazenar e transmitir dados estruturados em diversas aplicações. No desenvolvimento em Delphi, a manipulação de arquivos XML é fundamental, pois permite a leitura, modificação e criação de estruturas de dados de forma eficiente. Neste artigo, vamos explorar como criar novos documentos XML a partir do zero e manipular seus nós, atributos e valores utilizando Delphi.
Criando Novos Documentos XML em Delphi
Para trabalhar com XML em Delphi, a classe principal que utilizamos é a TXMLDocument
. Essa classe permite criar e manipular arquivos XML de maneira eficiente, seja para ler, escrever ou modificar informações. Vamos começar criando um documento XML do zero e adicionando os elementos e atributos necessários.
Passo 1: Configurando o Componente TXMLDocument
A primeira coisa que você precisa fazer é adicionar a unidade XMLDoc
ao seu projeto. Em seguida, pode-se utilizar o componente TXMLDocument
para criar a estrutura XML.
uses XMLDoc, XMLIntf; var XMLDoc: IXMLDocument; RootNode, ChildNode: IXMLNode; begin // Criando o documento XML XMLDoc := NewXMLDocument; XMLDoc.Options := [doNodeAutoIndent]; XMLDoc.Version := '1.0'; XMLDoc.Encoding := 'UTF-8'; // Adicionando o nó raiz RootNode := XMLDoc.AddChild('Livraria'); // Salvando o documento em um arquivo XMLDoc.SaveToFile('livraria.xml'); end;
Neste exemplo, estamos criando um documento XML vazio e definindo seu nó raiz como <Livraria>
. A propriedade Options
define que o XML será automaticamente identado, o que melhora a legibilidade do arquivo.
Passo 2: Adicionando Nós e Atributos
Após criar o documento e definir o nó raiz, podemos adicionar elementos filhos e atributos. Isso é feito com o método AddChild
para os nós e SetAttribute
para os atributos.
uses XMLDoc, XMLIntf; var XMLDoc: IXMLDocument; RootNode, LivroNode: IXMLNode; begin // Criando o documento XML XMLDoc := NewXMLDocument; XMLDoc.Options := [doNodeAutoIndent]; XMLDoc.Version := '1.0'; XMLDoc.Encoding := 'UTF-8'; // Adicionando o nó raiz RootNode := XMLDoc.AddChild('Livraria'); // Adicionando um nó filho (Livro) e atributos LivroNode := RootNode.AddChild('Livro'); LivroNode.Attributes['ID'] := '001'; LivroNode.AddChild('Titulo').Text := 'Programando em Delphi'; LivroNode.AddChild('Autor').Text := 'Fulano de Tal'; LivroNode.AddChild('Preco').Text := '49.90'; // Salvando o documento em um arquivo XMLDoc.SaveToFile('livraria.xml'); ShowMessage('Arquivo criado!'); end;
Aqui, adicionamos um elemento <Livro>
com atributos e elementos filhos como <Titulo>
, <Autor>
, e <Preco>
. O atributo ID
foi adicionado diretamente ao nó do livro, e os valores de texto foram atribuídos aos elementos filhos. O arquivo será salvo na raiz do executável.
Modificando Nós e Atributos no XML
Além de criar um novo documento, o Delphi permite modificar os valores e atributos de um arquivo XML existente. Para isso, basta carregar o arquivo, localizar o nó desejado e alterar suas propriedades.
Carregando um Documento XML Existente
Para modificar um XML, a primeira etapa é carregar o arquivo para dentro da aplicação, usando o método LoadFromFile
.
uses XMLDoc, XMLIntf; var XMLDoc: IXMLDocument; LivroNode: IXMLNode; begin // Carregando o documento XML existente XMLDoc := LoadXMLDocument('livraria.xml'); // Localizando o nó do livro com ID 001 LivroNode := XMLDoc.DocumentElement.ChildNodes.FindNode('Livro'); if Assigned(LivroNode) and (LivroNode.Attributes['ID'] = '001') then begin // Modificando o preço do livro LivroNode.ChildNodes['Preco'].Text := '39.90'; // Salvando as alterações no arquivo XMLDoc.SaveToFile('livraria_modificado.xml'); ShowMessage('Arquivo criado!'); end; end;
Neste código, carregamos o arquivo livraria.xml
e localizamos o nó do livro com o ID 001
. Em seguida, modificamos o preço do livro para 39.90
e salvamos as alterações em um novo arquivo. O arquivo será salvo na raiz do executável.
Veja a ilustração abaixo, dos arquivos xml que serão criados:

Veja abaixo a ilustração do projeto:

Código fonte do exemplo
Você pode fazer o download do exemplo do projeto através do repositório do github:
https://github.com/Gisele-de-Melo/CriarManipularXML
Conclusão
Manipular XML em Delphi é uma tarefa simples quando se utiliza a classe TXMLDocument
. Criar documentos do zero, adicionar nós e atributos, e modificar valores existentes são ações comuns que podem ser realizadas de forma eficiente com poucas linhas de código. O XML continua sendo uma tecnologia crucial em diversas aplicações modernas, especialmente quando se trata de armazenamento e troca de dados estruturados.
Com essas práticas, você será capaz de criar, ler e modificar documentos XML em Delphi, integrando essa tecnologia em suas aplicações de forma prática e eficiente.
Posts Relacionados
Delphi para Android e iOS
Delphi Start
Programando em Delphi XE
Aprenda programar Delphi
Banco de Dados RAD Delphi
Delphi Programming Projects