Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola pessoal, estou precisando de uma ajuda/luz para resolver meu problema.
Estava tentando fazer em .bat mas não deu certo..
Preciso criar um programa para abrir um arquivo .xml e coletar algumas linhas
Ex do arquivo:
<?xml version="1.0" encoding="utf-8"?>
<nfeProc versao="3.10" xmlns="http://www.portalfiscal.inf.br/nfe">
<NFe xmlns="http://www.portalfiscal.inf.br/nfe">
<infNFe Id="NFe3516031960........" versao="3.10">
<ide>
<cUF>35</cUF>
<cNF>0123456789</cNF>
<natOp>VENDA DE MERCADORIA</natOp>
<indPag>1</indPag>
<mod>55</mod>
<serie>1</serie>
<nNF>12121212</nNF>
<dhEmi>2016-03-29T00:00:00-03:00</dhEmi>
<dhSaiEnt>2016-03-29T23:05:00-03:00</dhSaiEnt>
<tpNF>1</tpNF>
<idDest>1</idDest>
<cMunFG>3543402</cMunFG>
<tpImp>1</tpImp>
<tpEmis>1</tpEmis>
<cDV>0</cDV>
<tpAmb>1</tpAmb>
<finNFe>1</finNFe>
<indFinal>0</indFinal>
<indPres>9</indPres>
<procEmi>0</procEmi>
<verProc>3.0.0</verProc>
</ide>
<emit>
<CNPJ>4545456000108</CNPJ>
<xNome>DISPAN COMERCIAL LTDA</xNome>
<xFant>DISPAN</xFant>
[...]
Preciso que ele abra o arquivo e pegue o conteudo das linhas "cNF", "dhEmi" e "xNome" e renomeio o arquivo com esses dados, ex:
cNF_dhEmi_xNome.xml ou seja: 0123456789_2016-03-29_DISPAN COMERCIAL LTDA.xml
Alguém pode me dar um norte?
Estou usando o programa "Dev-C++" para fazer isso.
Obrigado.
Se eu não me engano já existe bibliotecas para o que você deseja, caso contrario, você pode criar uma função simples que lê o arquivo XML até encontrar a área que você deseja, exemplo de codigo miojo(feito em 5 minutos):
#include <stdio.h>
#include <string.h>
//Corrigido
const char obterDadosXML(const char nomeDoArquivo, const char *codigoNoArquivo){
//Abrindo arquivo!
int main(){
//Variáveis temporárias
char arquivo[128],
codigoNoArquivo[128],
Para renomear, creio que você precisa criar uma variavel do tipo string para armazenar o novo nome do arquivo, exemplo: e depois você cria uma string para armazenar o comando a ser usado na função system, exemplo: P.S: Na funcao obterDadosXML, você sempre vai ter que abrir o arquivo quando você for usar ela, mas se quiser pode abrir o arquivo na função main() e depois so envia as linhas para o obterDadosXML pegar os dados na linha.