Como faço para ler esse campo ?

Delphi

XML

23/11/2017

Boa tarde , estou tentando ler um campo de cnpj no meu xml que eujoguei todo o conteudo do xml num arquivo TEXT estou usando o seguinte comando para pegar esse valor porém está errado:
CNPJ := Copy(ArquivoXML.Text,
                    Pos('<IdentificacaoTomador><CpfCnpj><Cnpj>', ArquivoXML.Text)+14,
                    Pos('</Cnpj>', ArquivoXML.Text) +
                    Pos('<IdentificacaoTomador><CpfCnpj><Cnpj>', ArquivoXML.Text)-24);


A estrutura do arquivo é essa :

<IdentificacaoTomador><CpfCnpj><Cnpj>11111111111111</Cnpj></CpfCnpj><InscricaoMunicipal>00</InscricaoMunicipal></IdentificacaoTomador><RazaoSocial>TRANSSPORTES IMEDIATO LTDA</RazaoSocial><Endereco><Endereco>R AUGUSTO BIANCHI </Endereco><Numero>000</Numero><Complemento/><Bairro>LAGOINHA </Bairro><Cidade>3543402</Cidade><Estado>SP</Estado><Cep>00000000</Cep></Endereco><Contato><Email>teste@teste.com.br</Email></Contato></TomadorServico><OrgaoGerador><CodigoMunicipio>3106705</CodigoMunicipio></OrgaoGerador></Nfse></NFSE>


como posso fazer ? desde já agradeço
Rodrigo Oliveira

Rodrigo Oliveira

Curtidas 0

Melhor post

Natanael Ferreira

Natanael Ferreira

23/11/2017

Teste assim:
var
  cnpj: string;
  inicio, fim: Integer;
begin
  inicio := Pos('<Cnpj>', ArquivoXML.Text) + 6;
  fim := Pos('</Cnpj>', ArquivoXML.Text) - inicio;

  cnpj := Copy(ArquivoXML.Text, inicio, fim);
  ShowMessage(cnpj);
end;
GOSTEI 1
POSTAR