terça-feira, 20 de novembro de 2012

XML Data Binding no Delphi - Parte 3

Como alterar o Arquivo XML em Delphi

Continuando o projeto iniciado na parte 1
Agora veremos como alterar o arquivo XML inserindo novos dados e salvando este arquivo para uso posterior.

Interface 

Continuando o projeto, adicione dois TEdit, um para o Nome do Contato e outro para o Telefone do Contato. Adicione também um botão para inserir os dados no XML.



Visualizar o Contato

 Adicione o seguinte código no evento OnClick do TButton.

var Agenda  : IXMLAgendaType;
    Contato : IXMLContatoType;
    Arquivo : TStringList;
begin
  Agenda  := Loadagenda('agenda.xml');
  Contato := Agenda.Add();
  Contato.Id := Agenda.ChildNodes.Count;
  Contato.Nome := edNome.Text;
  Contato.Fone := edTelefone.Text;

  Arquivo := TStringList.Create;
  Arquivo.Add(Agenda.XML);
  Arquivo.SaveToFile('agenda.xml');
  Arquivo.Free;
 

Explicação do Código 

Primeiramente carregamos novamente o XML para um Objeto como no artigo anterior.
O Método Add do nosso objeto retorna um novo Objeto do tipo IXMLContatoType onde iremos setar o Nome e Telefone do contato.
Depois utilizamos um TStringList para salvar novamente o XML para o arquivo.
Experimente agora utilizar o botão Visualizar e  veja que o nosso novo contato irá aparecer também.

Outros Métodos disponibilizados

  • Remove(const Node: IXMLNode) : Permite remover do XML o node passado como parâmetro.
  • Count : Retorna o número de nós filhos(contatos)
  • Clear : Permite limpar a lista de contatos

 Webservices

Neste exemplo utilizamos um arquivo salvo localmente, mas é possível utilizar o Data Binding também recebendo um XML de um WebService e acessando diretamente suas propriedades, sem necessidade de ler e salvar Nós do arquivo XML.

Até a próxima



0 comentários:

Blogger Template by Clairvo