Bloqueio de arquivo

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??

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

abraço

Mas o meu java acessa normalmente esses arquivos??

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

File.setReadOnly()

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

Abraço

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??

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

Abraço

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

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

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!!

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

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.

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

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.