Java IO

4 respostas
java
Eugenio201017
Olá, pessoal.

Estou começando em Java, porém estou enfrentando uma dificuldade no Capítulo I/O na Classe File.

No Windows para acessar um path usa-se:

File file = new File(c:\TextoExemplo.txt);

E no Mac OS X, como seria?

tentei assim:

public class UsoDaClasseFile {
public static void main(String[] args) {
	File file = new File("/Utilizador/eugeniobernardo/Secretária/TextoExemplo.txt");
	System.out.println("Nome: " + file.getName());
	System.out.println("Caminho: " + file.getAbsolutePath());
	System.out.println("É um diorectório?: " + file.isDirectory());
	System.out.println("É um ficheiro?: " + file.isFile());
	System.out.println("Pode ser lido?: " + file.canRead());
	System.out.println("Pode ser escrito?: " + file.canWrite());
	System.out.println("Existe?: " + file.exists());
}

}
Saída:
Nome: TextoExemplo.txt
Caminho: /Utilizador/eugeniobernardo/Secretária/TextoExemplo.txt
É um diorectório?: false
É um ficheiro?: false
Pode ser lido?: false
Pode ser escrito?: false
Existe?: false

Os métodos isFile, canRead, canWrite e exists, deveriam retornar true. Também era de esperar que o arquivo fosse criado.
Ajudem, please.

4 Respostas

R

No Linux o “/” é o diretório raiz do sistema, verifique se realmente existe o caminho que você passa nessa String.

Eugenio201017
O caminho existe. Engraçado, quando tentei o mesmo procedimento no Windows, também não funcionou:

File file = new File(c:\TextoExemplo.txt);

file.exists();

//Retorna false. Não era suposto criar o arquivo, depois de compilar o código?
Marcus_Gp

Não, ele só vai criar o arquivo se você mandar o java fazer isso pra você. Chamando o método createNewFile() da classe File, ele criará o arquivo pra você caso não exista. Existe também a opção mkdir() e mkdirs() que criam os diretórios em sequencia, como especificado no path passado no construtor. A diferença do mkdir() e do mkdirs() é que um só cria o último diretório, enquanto o outro cria toda a árvore de diretórios.

Eugenio201017

Como acesso a raiz no mac os x?
no windows é assim:
c:\user\…
E no mac então?

Criado 30 de maio de 2016
Ultima resposta 31 de mai. de 2016
Respostas 4
Participantes 3