Página 1 de 1

Lendo uma tag dentro de um nó

Enviado: Sex Mar 20, 2015 1:30 pm
por Garibaldo
Boa tarde pessoal

Estou lendo um arquivo .XML e dentro desse arquivo existem vários nós. Preciso saber se dentro de um determinado nó existe uma determinada tag. É possível saber essa informação?
/-----------------------Pegando no .XML as informações referente ao Emitente da NFe. -----------------------------------
//Pegando elemento pelo nome da TAG

XmlNodeList xnList1 = xmlDoc.GetElementsByTagName("dest");
for (int j = 0; j < xnList1.Count; j++) //Usando for para imprimir na tela
{
cCnpjEmit = xnList1[j]["CNPJ"].InnerText;
cNomeEmit = xnList1[j]["xNome"].InnerText;
cNomeFantasiaEmit = xnList1[j]["xFant"].InnerText;
cInscEstadualEmit = xnList1[j]["IE"].InnerText;
}

No exemplo que uso acima o meu nó chama-se "dest". Dentro do nó "dest" existem as tags: CNPJ, xNome, xFant, IE. Tem arquivos que baixo da receita que que vem a tag CNPJ. Tem arquivos que vem a tag CPF. Tem alguma forma de saber se a tag que eu estou lendo é CPF ou CNPJ, ou seja, se for CNPJ eu mando a informação para uma variárel cCNPJ e for CPF e mando a informação para uma variável cCPF.

Por favor me ajudem.
Garibaldo

Re: Lendo uma tag dentro de um nó

Enviado: Sex Mar 20, 2015 10:03 pm
por Mikel Silveira Fraga
Garibaldo, boa noite.

Olha, pelo seu código, você esta utilizando o C# ou alguma variação de Java. Reconheci os parâmetros do laço For, que é parecido com o JavaScript.

Outra coisa que percebi foi o uso da Classe XmlNodeList, usado como tipo de variável para xnList1.

Sei que ao utilizar a classe DOMDocument60, existe uma propriedade chamada nodeName, o qual você consegue verificar o nome do nó que esta sendo analisado.

Usando esta propriedade, acredito que você irá conseguir realizar essa verificação que deseja.

Infelizmente não tenho nenhuma instrução pronta para lhe apresentar, mas espero que a dica ajude.

Abraços e bom final de semana.

Re: Lendo uma tag dentro de um nó

Enviado: Dom Mar 22, 2015 4:14 pm
por Garibaldo
Mikel boa tarde,

Você teria algum exemplo para me enviar, eu não estou conseguindo montar o comando. Há a linguagem é C#.

Garibaldo

Re: Lendo uma tag dentro de um nó

Enviado: Dom Mar 22, 2015 6:26 pm
por Garibaldo
Mikel boa tarde, Tem como eu pegar o nome da tag <CPF> e colocá-la em Uma variável. Se tem me ajude montando esse comand. É C#

-<dest>
<CPF>04781552803</CPF>
<xNome>GARIBALDO LUIS G CHAVES</xNome>-
<enderDest>
<xLgr>R 13</xLgr>
<nro>138</nro>
<xBairro>RES PRQ CUMBICA</xBairro>
<cMun>3518800</cMun>
<xMun>GUARULHOS</xMun>
<UF>SP</UF>
<CEP>07174310</CEP>
<cPais>1058</cPais>
<fone>1149698640</fone>
</enderDest><IE/>
</dest>

Re: Lendo uma tag dentro de um nó

Enviado: Dom Mar 29, 2015 11:16 am
por Mikel Silveira Fraga
Garibaldo, bom dia.

Ainda não consegui dar atenção a esse caso, pois apareceu uma demanda diferente pra estar fazendo.

Em relação ao código ser em C#, vou ficar te devendo, pois não aprendi a desenvolver em C#, mas posso tentar colocá-lo em VB6 e você adaptá-lo.

Assim que tiver um tempo sobrando, dou uma olhada nisso, mas caso seja urgente, faça umas pesquisas ... não vai ser difícil de encontrar esse tipo de auxílio.

Quaisquer dúvidas, poste aqui.

Abraços e bom final de semana.

Re: Lendo uma tag dentro de um nó

Enviado: Ter Mar 31, 2015 2:22 pm
por mirculio
Garibaldo, boa tarde.

Tente encontrar alguma característica que diferencie as duas informações....

Uma alternativa seria você contar a quantidade de caracteres existentes na variável.... Não conheço profundamente o assunto, mas acho que a quantidade dos dois são diferentes.

Ou verificar se nessa variável existe algum tipo de caracter exclusivo. Se não me engano, todo CNPJ possui o caracter "/". Identificando esse caracter você saber qual a informação contida no XML...