Como testar se um arquivo texto já esta aberto?

2 respostas
A

E aí pessoal,

Estou precisando checar se um determinado arquivo texto já está aberto por outro programa (programa feito em cobol), alguém sabe como eu posso fazer isto?

Valeu. t+

2 Respostas

C

Olá andrecarrera,

Pra verificar exatamente como você quer, eu não sei te responder. Mas eu tenho uma idéia que pode funcionar: quando o programa em Cobol abrir esse arquivo pra leitura (info.txt), ele cria um outro arquivo (info.lck) pra informar que o arquivo de texto está aberto. Quando ele terminar a comunicação com esse arquivo, ele deleta o arquivo de lock. Dessa forma, você checa se info.lck existe e, se existir, é porque o outro programa tá com ele aberto.

O problema disso é que você tem que modificar o programa em Cobol e também é problemático se esse programa for fechado incorretamente (por uma queda de energia, por exemplo), já que o info.lck vai continuar existindo.

Enfim, isso é apenas uma idéia :slight_smile:

Até mais,

A

“CD1”:
Olá andrecarrera,

Pra verificar exatamente como você quer, eu não sei te responder. Mas eu tenho uma idéia que pode funcionar: quando o programa em Cobol abrir esse arquivo pra leitura (info.txt), ele cria um outro arquivo (info.lck) pra informar que o arquivo de texto está aberto. Quando ele terminar a comunicação com esse arquivo, ele deleta o arquivo de lock. Dessa forma, você checa se info.lck existe e, se existir, é porque o outro programa tá com ele aberto.

O problema disso é que você tem que modificar o programa em Cobol e também é problemático se esse programa for fechado incorretamente (por uma queda de energia, por exemplo), já que o info.lck vai continuar existindo.

Enfim, isso é apenas uma idéia :slight_smile:

Até mais,

é uma boa idéia, o único problema é este que vc disse…eu achei que tivesse como testar isso em java, mas já procurei pra caramba e num achei nada… vou tentar fazer algo em cima desse esquema do .lck…

valeu Cristian…t+


André Carrera

Criado 29 de junho de 2006
Ultima resposta 29 de jun. de 2006
Respostas 2
Participantes 2