Página 1 de 1
Fechamento de Arquivo TXT
Enviado: 24 Mar 2022 12:36
por lczani
Boa Tarde,
Tenho uma rotina que lê arquivos TXT com pedidos da PCRJ um ou mais que eu coloco no pen-drive conforme eu leio um arquivo eu apago do pen-drive so que o último arquivo mesmo que Eu o feche ele consta como aberto e portanto não consigo apaga-lo alguma dica.
uso FT_FUSE().
Fechamento de Arquivo TXT
Enviado: 24 Mar 2022 18:20
por JoséQuintas
A primeira coisa que me veio à cabeça foi a possibilidade de você estar fechando só na troca entre arquivos, e não fechar no último.
Fechamento de Arquivo TXT
Enviado: 24 Mar 2022 19:48
por Itamar M. Lins Jr.
Olá!
mesmo que Eu o feche ele consta como aberto
Consta pq está aberto. Ou o windows está com BUG. Será isso ?
Se colocar a parte do código correspondente, poderemos analisar.
Saudações,
Itaamr M. Lins Jr.
Fechamento de Arquivo TXT
Enviado: 25 Mar 2022 08:53
por Kapiaba
Bom dia,
Código: Selecionar todos
FT_FUSE( "Texto.txt" ) // open text file
WHILE .NOT. FT_FEOF()
? FT_FREADLN()
FT_FSKIP()
ENDDO
FT_FUSE() // close file
// Source: FTTEXT.C
Regards, saludos.
Fechamento de Arquivo TXT
Enviado: 25 Mar 2022 10:21
por lczani
BOM DIA,
Ontem depois de muito tentar achei nesta rotina a abertura do arquivo TXT usando o fopen para verificar se os pedidos são da empresa correta, e apos eu fecho usando o fclose
substitui fopen por ft_fuse('Nome do arquivo') para abrir e ft_fuse() para fechar e passou a funcionar corretamente, agradeço ao empenho de todos em me ajudar.
MUITO OBRIGADO.
Fechamento de Arquivo TXT
Enviado: 03 Out 2022 12:51
por clodoaldomonteiro
Só pra constar, tem tb o HB_FUse().
Exemplo:
Código: Selecionar todos
// The example implements a simple text file viewer using a
// TBrowse object and text file functions.
#include "Common.ch"
#include "Inkey.ch"
#include "TBrowse.ch"
PROCEDURE Main( cFile )
LOCAL nFile, oTBrowse
SET CURSOR OFF
nFile := HB_FUse( cFile )
IF nFile < 1
? "File not found", cFile
QUIT
ENDIF
oTBrowse := TxtBrowse()
RunTxtBrowse( oTBrowse )
HB_FUse()
RETURN
PROCEDURE RunTxtBrowse( oTBrowse )
LOCAL nKey, nLen, lRun := .T.
DO WHILE lRun
oTBrowse:forceStable()
nKey := Inkey(0)
SWITCH nKey
CASE K_LEFT
IF oTBrowse:cargo > 1
oTBrowse:cargo --
oTBrowse:refreshAll()
ENDIF
EXIT
CASE K_RIGHT
oTBrowse:cargo ++
oTBrowse:refreshAll()
EXIT
CASE K_HOME
IF oTBrowse:cargo > 1
oTBrowse:cargo := 1
oTBrowse:refreshAll()
ENDIF
EXIT
CASE K_END
nLen := Len( HB_FReadLN() )
IF nLen-oTBrowse:cargo+1 > 72
oTBrowse:cargo := nLen - 72 + 1
oTBrowse:refreshAll()
ENDIF
EXIT
CASE K_CTRL_HOME
EXIT
CASE K_CTRL_END
EXIT
DEFAULT
IF oTBrowse:applyKey( nKey ) == TBR_EXIT
lRun := .F.
ENDIF
END
ENDDO
RETURN
FUNCTION TxTBrowse( nT, nL, nB, nR )
LOCAL oTBrowse, oTBCol1, oTBCol2
DEFAULT nT TO 0, ;
nL TO 0, ;
nB TO MaxRow(), ;
nR TO MaxCol()
oTBrowse := TBrowseNew( nT, nL, nB, nR )
oTBrowse:cargo := 1
oTBCol1 := TBColumnNew( " ", ;
{|| Padr(HB_FRecno(),5)+":" } )
oTBCol2 := TBColumnNew( " ", ;
{|| Padr( SubStr( HB_FReadLN(), oTBrowse:cargo), 72 ) } )
WITH OBJECT oTBrowse
:addColumn( oTbCol1 )
:addColumn( oTbCol2 )
:goTopBlock := {|| HB_FGotop() }
:goBottomBlock := {|| HB_FGoBottom() }
:skipBlock := {|n| TxtSkipper(n) }
:colPos := 2
END
RETURN oTBrowse
FUNCTION TxtSkipper( nRequest )
LOCAL nSkip := 0
DO CASE
CASE nRequest == 0
CASE nRequest < 0
DO WHILE nSkip > nRequest .AND. HB_FRecno() > 1
HB_FSkip(-1)
nSkip --
ENDDO
CASE nRequest > 0
DO WHILE nSkip < nRequest
HB_FSkip(1)
IF HB_FEof()
EXIT
ENDIF
nSkip ++
ENDDO
ENDCASE
RETURN nSkip
Fechamento de Arquivo TXT
Enviado: 03 Out 2022 20:02
por alxsts
Olá!
Grato por compartilhar.
É uma função interessante. Pena que não funciona direito. Ao teclar Page Down ou Page Up, se perde toda...
Fiz este alerta na outra mensagem que você postou, com a mesma função, em 14 Fev 2022 11:38
neste tópico
Você usa isto? Tem uma versão corrigida e funcional?
Fechamento de Arquivo TXT
Enviado: 05 Out 2022 14:40
por clodoaldomonteiro
Só uso ela mesmo, com o xHarbour 1.2.3 e BCC 7.3.
E este aí é um exemplo do manual .chm do xHarbour.
Fechamento de Arquivo TXT
Enviado: 16 Out 2022 17:47
por Vlademiro
alxsts escreveu:Olá!
Grato por compartilhar.
É uma função interessante. Pena que não funciona direito. Ao teclar Page Down ou Page Up, se perde toda...
Fiz este alerta na outra mensagem que você postou, com a mesma função, em 14 Fev 2022 11:38
neste tópico
Você usa isto? Tem uma versão corrigida e funcional?
Não cheguei a usar com HB_ mas substitui todos HB_ por FT_ , troquei DEFAULT por OTHERWISE e está funcionando perfeitamente no Harbour 3.2
Fechamento de Arquivo TXT
Enviado: 17 Out 2022 18:27
por alxsts
Olá!
Vlademiro escreveu:Não cheguei a usar com HB_ mas substitui todos HB_ por FT_ , troquei DEFAULT por OTHERWISE e está funcionando perfeitamente no Harbour 3.2
Fiz o mesmo aqui e realmente funciona.
A função HB_FSkip() do Harbour está com problema quando se passa um parâmetro numérico negativo para ela. Começa executando certo mas depois move o ponteiro para o início do arquivo. O mesmo ocorre com HB_FGoTo()...