Répertoires, chemins et FileSystemEntity
Parcourir et examiner le système de fichiers
Répertoires, chemins et FileSystemEntity est une leçon Dart Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Dart Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Dart Academy comprend 4 leçons au total.
La classe répertoire
Tout comme fichier désigne un fichier, la classe répertoire désigne un dossier. Vous la construisez à partir d'une chaîne de chemin, prête à être inspectée ou créée.
final dir = Directory('logs');Créer un dossier
Appelez create pour créer le dossier. Ajoutez recursive: true et Dart créera pour vous, en une seule opération, tous les dossiers parents manquants.
await dir.create(recursive: true);Où suis-je en train d'exécuter le programme
Vous avez besoin du dossier dans lequel votre programme a démarré ? Directory.current fournit le répertoire de travail, point d'ancrage des chemins relatifs.
print(Directory.current.path);Lister le contenu d'un dossier
Utilisez list pour parcourir le contenu d'un dossier sous forme de flux. Chaque événement représente une entité que vous pouvez examiner individuellement.
await for (final e in dir.list()) print(e.path);Parcourir en profondeur avec recursive
Transmettez recursive: true à list pour parcourir également tous les sous-dossiers et visiter toute l'arborescence située sous votre répertoire.
dir.list(recursive: true);FileSystemEntity, le type parent
Les fichiers et les répertoires étendent tous deux FileSystemEntity. Cette base commune permet à list de vous fournir l'un ou l'autre dans un même flux.
De quel type s'agit-il
Pour distinguer un fichier d'un dossier, utilisez FileSystemEntity.isDirectory ou vérifiez le type de l'entité. Vos boucles restent ainsi sûres quel que soit le cas rencontré.
if (await FileSystemEntity.isDirectory(e.path)) {}Joindre les chemins en toute sécurité
Ne concaténez pas les chemins avec de simples chaînes. Le paquet path assemble les éléments en utilisant le séparateur adapté à chaque plateforme.
import 'package:path/path.dart' as p;Construire un chemin
Appelez p.join avec chaque segment pour obtenir un chemin propre et correct, aussi bien sous Windows que sous macOS ou Linux.
final full = p.join('data', 'users', 'a.txt');Découper un chemin
Extrayez les différentes parties d'un chemin avec des utilitaires comme p.basename pour le nom du fichier et p.dirname pour son dossier.
print(p.basename('/data/a.txt'));Obtenir l'extension
Vous avez uniquement besoin du suffixe ? p.extension le renvoie avec le point, ce qui permet de filtrer facilement les fichiers par type.
print(p.extension('photo.png'));Vérification rapide
Vous devez construire un chemin multiplateforme à partir de plusieurs segments. Quelle est la méthode sûre ?
Récapitulatif
Vous pouvez créer des dossiers, en lister récursivement le contenu, distinguer les fichiers des répertoires et construire des chemins en toute sécurité avec le paquet path.
Questions Fréquemment Posées
La leçon « Répertoires, chemins et FileSystemEntity » est-elle gratuite ?
Oui — le texte complet de « Répertoires, chemins et FileSystemEntity » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Dart Academy, passe à CoddyKit PRO. Le cours Dart Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Répertoires, chemins et FileSystemEntity » ?
Parcourir et examiner le système de fichiers Tu pratiques Dart Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Dart Academy ?
Aucune expérience préalable n'est requise. Dart Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.
Combien de temps prend la leçon « Répertoires, chemins et FileSystemEntity » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Dart Academy ?
Oui. Chaque leçon Dart Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Lire et écrire des fichiers
- Répertoires, chemins et FileSystemEntity
- Flux de fichiers volumineux
- Entrée standard, sortie standard et arguments du processus