Bloqueio de arquivo

13 respostas
A

Olá!! Tenho um programa que cria arquivos de texto e faz leitura e escrita nos mesmos. Queria evitar o seguinte caso. O usuário consegue abrir esse arquivo pelo notepad e consegue editar. Queria saber se é possível mudar isso. Como eu poderia não permitir que o usuário edite o arquivo??

13 Respostas

F

Salva o arquivo em um diretório com acesso restrito.

abraço

A

Mas o meu java acessa normalmente esses arquivos??

G

Não sou bom em manipulação de arquivos, mas ja vi esse método:

File.setReadOnly()

F

Depende do usuário. Configura de modo que somente o usuário da sua aplicação tenha acesso a este diretório.

Abraço

A

Uma coisa que eu pensei mas não sei se seria possível. A minha idéia seria criar o equivalente em java a uma dll. Se o usuário tentar abrir com o bloco de notas, aparece todo codificado, mas o java consegue ler e escrever neste arquivo. Existe algo parecido??

F

É… A solução do amigo acima é bem melhor…

Abraço

F

Por que você não usa criptografia???

P

o cara faz o download do arquivo e altera na própria máquina dele?

A

Estava pensando na segurança do sistema. Se o cara abrir o arquivo de texto onde eu tenho os dados e apagar ou editar manualmente pelo notepad, atrapalha toda a execução. Por isso queria um modo de bloquear essa opção. Não posso usar criptografia pq ainda sim ele pode ir lá e apagar dados. Vou tentar esse de somente leitura. Valeu!!

F

Neste caso esta é a melhor opção realmente.

A

Fiz da seguinte forma:

String dir = "C://Univap"; File arq1 = new File("filtro.txt");//teste arq1.setReadOnly(); BufferedWriter bw = new BufferedWriter(new FileWriter(dir+"//"+arq1));

Mas ainda consigo abrir o arquivo, editar e salvar.

J

acredito que não va funcionar. essas permissões tem a ver com os usuarios do SO.
no maximo vc poderia ter uma Thread que mantivesse o arquivo aberto e consequentemente locado. mas isso tem varios incovenientes.
sem usar algum codigo nativo do SO acho que não tem como fazer o que vc quer.

[]´s

A

Valeu!! Não deu certo mesmo o setReadOnly. Ela apenas verifica se o arquivo é somente leitura ou não, e não seta a permissão para ele ser somente leitura.

Criado 27 de dezembro de 2007
Ultima resposta 27 de dez. de 2007
Respostas 13
Participantes 5