Conteúdo: 

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
Alexandre Silva
Usuário Nível 3
Usuário Nível 3
Mensagens: 376
Registrado em: 26 Mar 2007 00:16
Localização: Itapema - SC

Conteúdo: 

Mensagem por Alexandre Silva »

Ola..
uso o harbour 3.2 e tem um rotina que faço 2 txt para contabilidade..
uso o comando FWRITE() .. agora depois de anos.. um dos 2 arquivos está sendo recusado pelo sistema importador do contador... devido a esse caracter..que aparece no começo do arquivo...


Pelo que vi, está relacionado com o PHP. Nao consigo ver esse caracter com o notepad plus...
O arquivo tem 660K o outro de 91k nao dá problema
Alguma sugestao.. ?? qual comando do Harbour para gravar txt
* Clipper 5.2e/Gaspro 4.0 /CDX/Blinker 7.0 Harbour 3.2 Console Hbmk2
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Conteúdo: 

Mensagem por bencz »

Tentou com o memowrit ?

MemoWrit()
Writes a character string or a memo field to a file.
Syntax

Código: Selecionar todos

MemoWrit( <cFileName>, <cString> ) --> lSuccess
Imagem
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Conteúdo: 

Mensagem por bencz »

Imagem
Avatar do usuário
Alexandre Silva
Usuário Nível 3
Usuário Nível 3
Mensagens: 376
Registrado em: 26 Mar 2007 00:16
Localização: Itapema - SC

Conteúdo: 

Mensagem por Alexandre Silva »

Oi
Memowrit até retorna .t. , mas nao gera arquivo nenhum....

e sobre o link, é para php.. queria uma solucao para o Harbour..

Nunca tive problemas em gerar TXT...
* Clipper 5.2e/Gaspro 4.0 /CDX/Blinker 7.0 Harbour 3.2 Console Hbmk2
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Conteúdo: 

Mensagem por alxsts »

Olá!

Talvez as configurações de linguagem estejam interferindo. Como estão configuradas? Tente colocar:

Código: Selecionar todos

   REQUEST HB_CODEPAGE_PTISO
   HB_CDPSELECT("PTISO")
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
fladimir
Colaborador
Colaborador
Mensagens: 2445
Registrado em: 15 Nov 2006 20:21

Conteúdo: 

Mensagem por fladimir »

No Harbour tem tb o HB_MEMOWRIT(), teste com ele, se não der se tiver como mandar o arquivo para ser melhor avaliado ou o código de como vc esta fazendo.

[]´s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar do usuário
Alexandre Silva
Usuário Nível 3
Usuário Nível 3
Mensagens: 376
Registrado em: 26 Mar 2007 00:16
Localização: Itapema - SC

Conteúdo: 

Mensagem por Alexandre Silva »

Eu estou usando

Código: Selecionar todos

REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_ES850C
HB_SETCODEPAGE('ES850C')
HB_LANGSELECT('PT')


varq:=fcreate('nomearq.txt')
fopen(varq, 2) // para leitura e escrita

// vou montando linha a linha e gravando.. 
vtxt:='10111111111111111111112'+space(219)+chr(13)+chr(10)
fwrite(varq,vtxt)
vtxt:='20144444444444411111112'+space(219)+chr(13)+chr(10)
fwrite(varq,vtxt)
fclose(varq)

Como ficaria no hb_memowit() ??

PS: Nos meus editores (Notepad++ e o Edit do Windows) nao aparece o caracter, só na importacao no contador

Vcs podem me indicar um editor para ver o txt ??
* Clipper 5.2e/Gaspro 4.0 /CDX/Blinker 7.0 Harbour 3.2 Console Hbmk2
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Conteúdo: 

Mensagem por alxsts »

Olá!

Estranho suas code pages estarem configuradas para espanhol (ES)...

O MED - Programmers' Text Editor exibe o código ASCII do carácter anterior à posição do cursor no texto. O download é pequeno e a instalação rápida.
Capturar.PNG
Capturar.PNG (7.2 KiB) Exibido 1477 vezes
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
Alexandre Silva
Usuário Nível 3
Usuário Nível 3
Mensagens: 376
Registrado em: 26 Mar 2007 00:16
Localização: Itapema - SC

Conteúdo: 

Mensagem por Alexandre Silva »

Obrigado....
Com o editor nao consegui ver o caracter que o software do contador alega...
A menos que tenha alguma config especifica..

Entao vou aguardar..para ver com ele...
* Clipper 5.2e/Gaspro 4.0 /CDX/Blinker 7.0 Harbour 3.2 Console Hbmk2
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Conteúdo: 

Mensagem por bencz »

O que quis dizer mandando o link do stack-over-flow, não é p/ se ver sobre o PHP, e sim sobre o conteudo da resposta e no que isso influencia na sua pergunta, bastava ler (:

http://en.wikipedia.org/wiki/Byte_order_mark

A resposta escolida no site diz o seguinte:
That's the representation for the UTF-8 BOM in ISO-8859-1. You have to tell your editor to not use BOMs or use a different editor to strip them out.
Essa é a representação para o UTF-8 BOM em ISO-8859-1. Você tem que dizer a seu editor para não usar BOMs ou usar um editor diferente para tira-los.
Imagem
Avatar do usuário
Alexandre Silva
Usuário Nível 3
Usuário Nível 3
Mensagens: 376
Registrado em: 26 Mar 2007 00:16
Localização: Itapema - SC

Conteúdo: 

Mensagem por Alexandre Silva »

Ok
vi isso
e sabia, pq o Resposavel pelo software do contador, editou o arquivo...para importar
Eu é que nao consigo ver aqui.. vou ver com ele qual editor usou ..
* Clipper 5.2e/Gaspro 4.0 /CDX/Blinker 7.0 Harbour 3.2 Console Hbmk2
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Conteúdo: 

Mensagem por Toledo »

Alexandre Silva escreveu:varq:=fcreate('nomearq.txt')
fopen(varq, 2) // para leitura e escrita
No seu código, esta segunda linha fopen(varq,2) não é necessário, pois o arquivo já foi aberto na linha anterior com o fcreate(). Pode ser que seja este o problema.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
Alexandre Silva
Usuário Nível 3
Usuário Nível 3
Mensagens: 376
Registrado em: 26 Mar 2007 00:16
Localização: Itapema - SC

Conteúdo: 

Mensagem por Alexandre Silva »

A funcao que abre/cria é essa ...

Código: Selecionar todos


function DFILEOPEN(varq)
local ret
ret:= fopen(varq, 2)
if (ret = -1) // se nao existe
   ret:= fcreate(varq)
endif
fclose(ret)
ret:= fopen(varq, 2)
return ret

* Clipper 5.2e/Gaspro 4.0 /CDX/Blinker 7.0 Harbour 3.2 Console Hbmk2
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Conteúdo: 

Mensagem por Toledo »

Alexandre Silva escreveu:Eu estou usando
Alexandre Silva escreveu:A funcao que abre/cria é essa ...
Deu a entender que você estava usando a da sua mensagem anterior.
Alexandre Silva escreveu:fclose(ret)
ret:= fopen(varq, 2)
Estes comandos também estão a mais, não precisa, pois nas linhas anteriores ou o arquivo será aberto no FOPEN() ou no FCREATE().

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
Alexandre Silva
Usuário Nível 3
Usuário Nível 3
Mensagens: 376
Registrado em: 26 Mar 2007 00:16
Localização: Itapema - SC

Conteúdo: 

Mensagem por Alexandre Silva »

Oi
Só para fechar.
o que estava havendo é que no cadastro de um produto. passou um caracter especial..
entao na geracao do arquivo txt o harbour, grava (escondido ) esse caracter ,
para indicar que é um arquivo OEM...

Bem ao salvar o arquivo pelo bloco de notas em formato ANSI, consegui ver qual era o problema...
entao é isso..nao tem haver com abertura de arquivo..consegui resolver..
* Clipper 5.2e/Gaspro 4.0 /CDX/Blinker 7.0 Harbour 3.2 Console Hbmk2
Responder