syspel Posted July 23, 2019 Report Share Posted July 23, 2019 bom dia preciso salvar este este array dentro de arquivo txt como eu faço isto obrigado carlos fwh1805 dbf clip53 bcc730 clear set talk off set date brit mdata=ctod("30/01/2019") pcnpj="72898646000149" envio ="..\esocialsyspel\"+pcnpj+"\envio\" enviado="..\esocialsyspel\"+pcnpj+"\enviado\" select 1 use etmp go top aesocial:={} Do While ! Eof() select 1 AADD(aesocial,{rtrim(etmp->linha)}) select 1 skip Enddo use info=" " For V1:=1 To Len(aesocial) if aesocial[v1,1]="</evento>" memowrit("S2200.xml",info) endif next Quote Link to comment Share on other sites More sharing options...
Jmsilva Posted July 23, 2019 Report Share Posted July 23, 2019 Use as funções asave() e aread() da fivewin. Quote Link to comment Share on other sites More sharing options...
infosys2 Posted July 24, 2019 Report Share Posted July 24, 2019 Ailton é muinto simples, basta fazer esta alteração: info:=" " For V1:=1 To Len(aesocial) info+=aesocial[v1,1] // Monta a string com o conteudo do xml aqui if aesocial[v1,1]="</evento>" memowrit("S2200.xml",info) // Grava o xml else info+=chr(13)+chr(10) // Quebra de linha endif next Quote Link to comment Share on other sites More sharing options...
infosys2 Posted July 24, 2019 Report Share Posted July 24, 2019 local info:="" // Declara a variavel como locano no inicio do aerquivo mdata :=ctod("30/01/2019") pcnpj :="72898646000149" envio :="..\esocialsyspel\"+pcnpj+"\envio\" enviado :="..\esocialsyspel\"+pcnpj+"\enviado\" select 1 use etmp dbgotop() Do While etmp->( !eof() do case case rtrim(etmp->linha) = "<evento>" info:="" // Reinicia a variavel para um novo arquivo case rtrim(etmp->linha) = "</evento>" // final do arquivo //aqui voce tem opção de gravar o xml incluindo o id no nome do arquivo //desta forma gernado um xml para cada ide ou funcionario diferente //ex: memowrit(cId+"S2200.xml",info) memowrit("S2200.xml",info) // Grava o xml otherwise // Monta a string pra gravar no xml info+=rtrim(etmp->linha)+chr(13)+chr(10) endcase etmp->( dbskip()) Enddo // Fecha o arquivo temporario aqui etmp->( DbCloseArea() ) Quote Link to comment Share on other sites More sharing options...
kapiaba Posted July 24, 2019 Report Share Posted July 24, 2019 JmSilva, explique melhor porfa. #include 'fivewin.ch' Function Main() Local aData1, aData2, cBinData aData1 := { "Tom", "Dickenson", "Harry" } cBinData := ASave( aData1 ) // Converts Array Data and to Binary and stores in cStr aData2 := ARead( cBinData ) // Reads data from Binary and then converts back to Array MsgList( aData2 ) Return nil Quote Link to comment Share on other sites More sharing options...
Jmsilva Posted July 24, 2019 Report Share Posted July 24, 2019 JmSilva, explique melhor porfa. #include 'fivewin.ch' Function Main() Local aData1, aData2, cBinData aData1 := { "Tom", "Dickenson", "Harry" } cBinData := ASave( aData1 ) // Converts Array Data and to Binary and stores in cStr aData2 := ARead( cBinData ) // Reads data from Binary and then converts back to Array MsgList( aData2 ) Return nil Salvar MemoWrit("file.txt",ASave(aData1)) Recuperar aData2 := ARead(MemoRead("file.txt")) kapiaba 1 Quote Link to comment Share on other sites More sharing options...
syspel Posted July 25, 2019 Author Report Share Posted July 25, 2019 ok pessoal obrigado das ideia que vc deram eu consequi resolver usei fwrite os demais exemplos no final do arquivo gera um caracterer estanho eu uma nova tecnica neste exeplos muito obrigado 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.