Estou com um probleminha. Estou tentando salvar um pequeno texto em um arquivo qualquer utilizando o FilOutputStream. Porém, após realizar o flush() e fechar o fluxo, não estou conseguindo visualizar o arquivo que criei, pois aparentemente ele não existe.
Segue o trecho do teste que eu fiz. Na verdade o teste era para detectar onde estava dando loop infinito. Agora achei, mas não estou conseguindo resolver.
File file_aux = new File("temp/aux.pdf");
file_aux.createNewFile();
System.out.println(file_aux.getAbsolutePath() + " Arquivo existe? " + file_aux.exists());
FileOutputStream fos_aux = new FileOutputStream(file_aux);
fos_aux.write("testandooooooooooooooooooooooooooooooooooooooooooooooooooooooooo".getBytes());
fos_aux.flush();
fos_aux.close();
System.out.println( (new File("temp/aux.pdf")).exists());
Quando executo este código, ele no início não existe (o arquivo), o que está correto, porém quando termina a execução ele deveria passar a existir, não? Mas na minha máquina eme continua não existindo!
Engraçado, rodei seu código aqui e também não funcionou.
Pior, o sistema de arquivos reconhece que o arquivo existe (não me deixa criar outro com o mesmo nome), mas o arquivo não aparece. Agora fiquei com dúvida também :shock: .
A linha ( (new File(“temp/aux.pdf”)) é só para confirmar que o arquivo foi criado. Mas em todas as chamadas quando faço: exists(), ele retorna true, sempre false.
Se fosse permissão, ele iria me retornar acesso negado, não?
Retirando a última linha, eu vou procurar o arquivo e não encontro.
Mesmo usando o caminho absoluto, do tipo : c:\aux.txt (ou qualquer outra extensão), não encontro o arquivo. O arquivo não é criado.
Alguma idéia?
O mais engraçado é que eu sempre usei o FileOutputStream assim:
FileOutputStream fos_aux = new FileOutputStream("teste.txt");
fos_aux.write("testandooooooooooooooooooooooooooooooooooooooooooooooooooooooooo".getBytes());
fos_aux.flush();
fos_aux.close();
java.io.IOException: The system cannot find the path specified
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(Unknown Source)
at br.com.furutani.roboprintscreen.Iniciar.main(Iniciar.java:17)
false