luctarrago Novato
Registrado: Segunda-Feira, 27 de Mai de 2013 Mensagens: 1
|
Enviada: Seg Mai 27, 2013 9:25 am Assunto: Ler node filho de XML |
|
|
Tenho o seguinte arquivo XML
<conferencia>
<beneficiario>
<identificacao>
<nome>CLARA SILVA</nome>
<sexo>3</sexo>
</identificacao>
<endereco>
<logradouro>RUA HENRIQUE VI</logradouro>
<codigoMunicipio>430700</codigoMunicipio>
<cep>99700000</cep>
</endereco>
</beneficiario>
<beneficiario>
<identificacao>
<nome>CARMEN BOMBA</nome>
<sexo>3</sexo>
</identificacao>
<endereco>
<logradouro>AV. PRESIDENTE KENEDDI</logradouro>
<codigoMunicipio>431410</codigoMunicipio>
<cep>99070000</cep>
</endereco>
</conferencia>
Preciso ler os dados de vários beneficiários e estou lendo a dataAtualizacao e situacao de todos porém não consigo ler o nome sexo logradouro que estão em um sub nó do beneficiario. Estou fazendo isto:
SIBNode:=XMLDoc1.DocumentElement.ChildNodes.FindNode('conferencia');
for i:=0 to SIBNode.ChildNodes.Count-1 do
begin
SIBAux:=SIBNode.ChildNodes[i];
SIBList:=SIBAux.AttributeNodes;
aux:=SIBList.FindNode('dataAtualizacao').Text;
MessageDlg(aux+#13+copy(aux,1,4)+#13+copy(aux,6,2)+#13+copy(aux,9,2), mtInformation, [mbOK],0);
a:=StrtoInt(copy(aux,1,4)); m:=StrtoInt(copy(aux,6,2)); d:=StrtoInt(copy(aux,9,2));
aux:=SIBList.FindNode('situacao').Text;
MessageDlg(aux, mtInformation, [mbOK],0);
Daí em diante só dá erro de violação de memória, como faço? |
|