0Pricing
Dart Academy · Aula

Diretórios, Caminhos e FileSystemEntity

Navegue pelo sistema de arquivos e inspecione-o.

Diretórios, Caminhos e FileSystemEntity é uma aula grátis de Dart Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Dart Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Dart Academy inclui 4 aulas no total.

A classe Directory

Assim como File identifica um arquivo, a classe Directory identifica uma pasta. Você cria uma a partir de uma cadeia de caracteres de caminho, pronta para ser examinada ou criada.

final dir = Directory('logs');

Crie uma pasta

Chame create para criar a pasta. Adicione recursive: true e o Dart criará de uma só vez todas as pastas pai ausentes.

await dir.create(recursive: true);

Onde estou executando

Precisa da pasta em que o programa foi iniciado? Directory.current fornece o diretório de trabalho, a referência para caminhos relativos.

print(Directory.current.path);

Liste o conteúdo da pasta

Use list para transmitir o conteúdo de uma pasta. Cada evento é uma entidade que você pode examinar individualmente.

await for (final e in dir.list()) print(e.path);

Aprofunde-se com recursive

Passe recursive: true a list para percorrer também todas as subpastas, visitando toda a árvore abaixo do seu diretório.

dir.list(recursive: true);

FileSystemEntity, a classe pai

Arquivos e diretórios estendem FileSystemEntity. Essa base compartilhada explica por que list pode fornecer qualquer um dos dois tipos em um único fluxo.

Que tipo é esse

Para diferenciar um arquivo de uma pasta, use FileSystemEntity.isDirectory ou verifique o tipo da entidade. Isso mantém seus laços seguros ao ramificar.

if (await FileSystemEntity.isDirectory(e.path)) {}

Combine caminhos com segurança

Não concatene caminhos usando cadeias de caracteres simples. O pacote path combina as partes usando o separador correto para cada plataforma.

import 'package:path/path.dart' as p;

Crie um caminho

Chame p.join com cada segmento para obter um caminho limpo e correto no Windows, no macOS ou no Linux.

final full = p.join('data', 'users', 'a.txt');

Separe um caminho

Extraia as partes de um caminho com auxiliares como p.basename para o nome do arquivo e p.dirname para a pasta correspondente.

print(p.basename('/data/a.txt'));

Obtenha a extensão

Precisa apenas do sufixo? p.extension o retorna com o ponto, permitindo filtrar arquivos por tipo com facilidade.

print(p.extension('photo.png'));

Verificação rápida

Você precisa de um caminho multiplataforma a partir de vários segmentos. Qual é a maneira segura?

Recapitulação

Você pode criar pastas, listar seu conteúdo recursivamente, diferenciar arquivos de diretórios e criar caminhos com segurança usando o pacote path.

Perguntas Frequentes

A aula “Diretórios, Caminhos e FileSystemEntity” é grátis?

Sim — o texto completo de “Diretórios, Caminhos e FileSystemEntity” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Dart Academy, atualize para CoddyKit PRO. O curso de Dart Academy inclui 4 aulas no total.

O que vou aprender em “Diretórios, Caminhos e FileSystemEntity”?

Navegue pelo sistema de arquivos e inspecione-o. Você pratica Dart Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Dart Academy?

Nenhuma experiência prévia é necessária. Dart Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Diretórios, Caminhos e FileSystemEntity”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Dart Academy?

Sim. Cada aula de Dart Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Leitura e Gravação de Arquivos
  2. Diretórios, Caminhos e FileSystemEntity
  3. Transmissão de Arquivos Grandes
  4. Entrada Padrão, Saída Padrão e Argumentos do Processo
← Voltar para Dart Academy