Gerenciando diretórios e caminhos

Entrada/Saída e Streams em Java

Alex Liu

Software Developer Engineer

Conceito-chave

  • Diretórios organizam arquivos e dados
  • Caminhos indicam onde estão arquivos e diretórios
  • A classe File pode representar um arquivo ou um diretório
    • O recurso criado depende do método chamado (mkdir() para diretórios e createNewFile() para arquivos)

Monitor de computador com vários ícones de diretórios

Entrada/Saída e Streams em Java

Criando diretórios

  • Importe a classe File
    import java.io.File;
    
  • Crie um objeto File que representa o diretório
    File newDirectory = new File("myDirectory");
    
  • Use .mkdir() para criar o diretório no sistema de arquivos
    boolean created = newDirectory.mkdir();
    
  • Retorna true se o diretório for criado com sucesso
  • Retorna false se o diretório já existir ou não puder ser criado
Entrada/Saída e Streams em Java

Listando arquivos em um diretório

  • Use .listFiles() para listar arquivos no diretório

$$

// Cria um objeto `File` representando o diretório `myDirectory`
File dir = new File("myDirectory");
// Obtém um `array` de objetos `File` representando o conteúdo de `myDirectory`
File[] files = dir.listFiles();
  • Retorna um array de objetos File se o diretório existir
  • Retorna null se o diretório não existir
Entrada/Saída e Streams em Java

Obtendo o caminho relativo de um arquivo

  • Caminho relativo: localização de um arquivo/diretório em relação ao diretório de trabalho atual
// Cria um objeto `File` para `sample.txt` dentro de `myDirectory`
File file = new File("myDirectory/sample.txt");
// Obtém o caminho relativo do arquivo como String
String path = file.getPath();
System.out.println(path);
  • Assumimos que myDirectory já existe; caso contrário, criar ou escrever o arquivo falhará

  • Saída:

    myDirectory/sample.txt
    
Entrada/Saída e Streams em Java

Trabalhando com caminhos absolutos

  • Caminho absoluto: o caminho completo desde a raiz do sistema de arquivos

$$

// Cria um objeto `File` para `sample.txt` dentro de `myDirectory`
File file = new File("myDirectory/sample.txt");
// Obtém o caminho absoluto do arquivo como String
String absPath = file.getAbsolutePath();
System.out.println(absPath);
  • Saída:
/user/home/myDirectory/sample.txt
Entrada/Saída e Streams em Java

Vamos praticar!

Entrada/Saída e Streams em Java

Preparing Video For Download...