vagner Posted October 26, 2013 Report Share Posted October 26, 2013 Sergio, deveria funcionar, pois mesmo os xml, possui um CRLF no final da linha Quote Link to comment Share on other sites More sharing options...
SAOliveira Posted October 26, 2013 Report Share Posted October 26, 2013 Testei, e não rola. Tem editores que traz o .xml numa única linha. Pode ser por aí. Quote Link to comment Share on other sites More sharing options...
miragerr Posted October 26, 2013 Report Share Posted October 26, 2013 Ola amigos Se for XML da NFe, o mesmo não tem CRLF. Quote Link to comment Share on other sites More sharing options...
Erciley Junior Posted October 28, 2013 Report Share Posted October 28, 2013 Como disseram, .xml geralmente é "UMA" grande linha cheia de tags, ou seja, a função funciona sim ^^ Não funciona a forma q vcs gostariam. O que vocês querem realmente é que tenha uma função que conte a quantidade de tags, o que seria teoricamente, o total de linha do .XML quando este está aberto no Chrome por exemplo. Usando o TXmlDocument parece ser fácil isso, ou até mesmo contando o fechamento de tags (/>) Quote Link to comment Share on other sites More sharing options...
emotta Posted October 29, 2013 Report Share Posted October 29, 2013 o codigo fonte ta ai, quem quiser adaptar pra contar linhas do XML é só adaptar aqui: if((strstr(temp, "\n")) != NULL) mude de acordo com a necessidade o controle da "quebra de linha" para o contador... abraços Quote Link to comment Share on other sites More sharing options...
cendon Posted October 30, 2013 Report Share Posted October 30, 2013 Eduardo, não sei se vai ajudar mas existe um comando em DOS que poesquisa strings em um arquivo texto. FIND [/V][/C][/N][/i] “string” [<arquivo>...]Mostra ou conta as linhas dos arquivos que contêm o string./V Mostra as linhas que não contêm o string./C Mostra o número de ocorrências, sem mostrar aslinhas onde foram encontradas./N Mostra o número de linha relativo./I Não distingue minúsculas de maiúsculas. FIND /N “MARIANA” B:NOMES.TXT Vê se ajuda Um abraço Quote Link to comment Share on other sites More sharing options...
emotta Posted October 31, 2013 Report Share Posted October 31, 2013 Cendon, eu nao estava precisando disso, mas a funcao ja passada pelo Vagner foi implementada nas rotinas que usamos e ficou otimo. Quanto a XML ainda nao preciso mas se precisar mudo a funcao implementando a quebra de XML. Agora quando a isso talvez seja util para o Gibaf, que foi o criador do topico... Em todo caso implementar esse tudo de coisa em um sistema sempre é uma solução (onde se executa executavel externo e pega resultado em arquivo texto) paleativa... abraços Quote Link to comment Share on other sites More sharing options...
wanderlei Cardoso Posted November 1, 2013 Report Share Posted November 1, 2013 Um Exemplo simples para saber o numero de linhas de um txt. oTxtFile := TTxtFile():New("D:\Arquivo.txt") MsgINFO( oTxtFile:RecCount(), 'RecCount' ) MsgINFO( oTxtFile:LastRec(), 'LastRec' ) MsgINFO( oTxtFile:nTLines, 'nTLines' ) Quote Link to comment Share on other sites More sharing options...
sistem Posted January 29, 2014 Report Share Posted January 29, 2014 soh para deixar registrado caso alguem procure as dica: warderlei Cardoso oTxtFile:LastRec() e AnaCatacombs aRetorno := FParseEx(NomedoArquivo,Delimitador) aRetornoP := FParseEx(oApp:cDir_Ssr+"0001P.txt", Chr(9)) oFileP = TTxtFile():New( oApp:cDir_Ssr+"0001P.txt" ) nNumeroLinha:=oFileP:LastRec() oFileP:End() for xx=1 to nNumeroLinha DbSelectArea("Clie") Clie->(DbSeek(aRetornoP[xx,2])) DbSelectArea("Reth") Reth->(AppendReg()) Reth->Cod_Reth := aRetornoP[xx,1] Reth->Dat_Reth := date() Reth->Sta_Reth := "A" Reth->Cli_Reth := aRetornoP[xx,2] Reth->Ven_Reth := Clie->Ven_Clie Reth->Rot_Reth := Clie->Rot_Clie Reth->Seg_Reth := Clie->Seg_Clie Reth->Val_Reth := Val(aRetornoP[xx,5]) Reth->Usu_Reth := oApp:WUsuario Reth->Tim_Reth := DtoC(Date())+"-"+Left(Time(),5) Reth->(DbCommit()) Reth->(DbUnlock()) Next Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.