Cursos / Informática para Internet / Desenvolvimento Desktop / Aula

arrow_back Aula 13 - Arquivos – Lendo, Escrevendo e Criando - Parte 1

Caminho Relativo ou Absoluto?

O path pode ser relativo ou absoluto. Um path absoluto sempre contém o elemento root e a lista completa de diretórios necessários para localizar o arquivo. Por exemplo, o caminho /home/user2/statusReport é um caminho absoluto. Ou seja, toda a informação necessária para localizar o arquivo está contida no caminho.

Um caminho relativo precisa ser combinado com outro caminho para que seja possível acessar um arquivo. Por exemplo, jose/fotos é um caminho relativo. Sem informação adicional não é possível localizar esse diretório no sistema de arquivos.

A classe Path

Como seu próprio nome implica, a classe Path é uma representação de um caminho no sistema de arquivos. Um objeto Path contém o nome do arquivo e a lista de diretórios usados para construir o caminho, e é usado para localizar e manipular arquivos. Uma instância da classe Path deve refletir as necessidades da plataforma na qual está executando. No Solaris OS, por exemplo, um objeto da classe Path usa a sintaxe do Solaris (/home/joe/foo), enquanto que no Windows o mesmo objeto usa a sintaxe do Windows (C:\home\joe\foo). É importante perceber que a classe Path não é independente de plataforma. Não se deve esperar que um objeto da classe Path que está em execução no Solaris OS funcione no Windows, por exemplo; mesmo que a estrutura de diretórios seja idêntica e nas duas instâncias ela aponte para o mesmo arquivo.

O arquivo ou diretório correspondente ao Path pode até nem existir. Você pode criar uma instância da classe Path e manipulá-la de várias maneiras: pode acrescentá-la, extrair partes dela ou compará-la com outro caminho, por exemplo. No momento apropriado, você poderá utilizar os métodos da classe Files para verificar a existência do arquivo correspondente ao Path, criar o arquivo, abri-lo, excluí-lo, alterar suas permissões, e assim por diante.

Criando um Path

Um objeto da classe Path pode ser facilmente criado com o auxílio da classe Paths (no plural) através do método estático get, como nos exemplos abaixo:

Path p1 = Paths.get("/tmp/foo/myfile.txt");

Path p2 = Paths.get("c:\\data\\myfile.txt");

O exemplo a seguir cria um caminho /home/jose/logs/teste.log, assumindo que seu diretório padrão é /home/jose, ou C:\jose\logd\teste.log, se você estiver no Windows.

Path p3 = Paths.get(System.getProperty("user.home"),"logs", "teste.log");

Versão 5.3 - Todos os Direitos reservados