0Pricing
Swift Academy · Leçon

Gestion des répertoires

Créez, listez et supprimez des répertoires.

Gestion des répertoires est une leçon Swift Academy gratuite sur CoddyKit. Ceci est la leçon 3 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 Swift Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Swift Academy comprend 4 leçons au total.

Gérer les répertoires

FileManager est l’objet central pour créer, répertorier, déplacer et supprimer des fichiers et des dossiers.

Le FileManager partagé

Utilisez FileManager.default pour la plupart des opérations. Il fournit une instance partagée thread-safe.

import Foundation

let fm = FileManager.default
print("Got the default file manager")

Créer un répertoire

createDirectory(at:withIntermediateDirectories:) crée un dossier et peut également créer les répertoires parents manquants.

import Foundation

let fm = FileManager.default
let dir = URL(fileURLWithPath: "/tmp/myapp/cache")
try? fm.createDirectory(at: dir, withIntermediateDirectories: true)
print("Directory created")

Vérifier l’existence

fileExists(atPath:) indique si un chemin existe et un indicateur passé par référence vous indique s’il s’agit d’un répertoire.

import Foundation

let fm = FileManager.default
var isDir: ObjCBool = false
let exists = fm.fileExists(atPath: "/tmp", isDirectory: &isDir)
print("Exists: \(exists), isDir: \(isDir.boolValue)")

Lister le contenu

contentsOfDirectory(at:includingPropertiesForKeys:) renvoie les URL contenues dans un répertoire.

import Foundation

let fm = FileManager.default
let dir = URL(fileURLWithPath: "/tmp")
if let items = try? fm.contentsOfDirectory(at: dir, includingPropertiesForKeys: nil) {
    print("Item count: \(items.count)")
}

Lister uniquement les noms

La version fondée sur un chemin, contentsOfDirectory(atPath:), renvoie de simples chaînes contenant les noms de fichiers lorsque vous n’avez pas besoin des URL complètes.

import Foundation

let fm = FileManager.default
if let names = try? fm.contentsOfDirectory(atPath: "/tmp") {
    print("Names count: \(names.count)")
}

Supprimer des éléments

removeItem(at:) supprime un fichier ou toute une arborescence de répertoires. Utilisez cette méthode avec précaution.

import Foundation

let fm = FileManager.default
let url = URL(fileURLWithPath: "/tmp/myapp/cache/old.txt")
try? fm.removeItem(at: url)
print("Removed item if it existed")

Déplacer et renommer

moveItem(at:to:) déplace ou renomme un élément ; copyItem(at:to:) duplique un fichier.

import Foundation

let fm = FileManager.default
let src = URL(fileURLWithPath: "/tmp/a.txt")
let dst = URL(fileURLWithPath: "/tmp/b.txt")
try? fm.moveItem(at: src, to: dst)
print("Moved if source existed")

Énumérer en profondeur

Un FileManager.DirectoryEnumerator parcourt récursivement toute une sous-arborescence et renvoie chaque URL imbriquée.

import Foundation

let fm = FileManager.default
let root = URL(fileURLWithPath: "/tmp")
if let e = fm.enumerator(at: root, includingPropertiesForKeys: nil) {
    var count = 0
    for case _ as URL in e { count += 1; if count > 5 { break } }
    print("Walked some entries: \(count)")
}

Attributs des fichiers

attributesOfItem(atPath:) renvoie des métadonnées telles que la taille et la date de modification dans un dictionnaire.

import Foundation

let fm = FileManager.default
if let attrs = try? fm.attributesOfItem(atPath: "/tmp"),
   let size = attrs[.size] {
    print("Has size attribute: \(size)")
}

Gérer les échecs

Les opérations sur les répertoires lèvent une erreur en cas de problème d’autorisation ou de chemin introuvable. Entourez-les d’un do/catch pour réagir correctement.

import Foundation

let fm = FileManager.default
do {
    try fm.removeItem(at: URL(fileURLWithPath: "/no/such/file"))
} catch {
    print("Remove failed: \(error.localizedDescription)")
}

Vérification rapide

Quelle option permet à createDirectory de créer également les répertoires parents manquants ?

Récapitulatif

FileManager.default crée des répertoires à l’aide de createDirectory, vérifie leur existence avec fileExists, les répertorie avec contentsOfDirectory, les supprime avec removeItem, et déplace ou copie des éléments. Vous avez également énuméré des sous-arborescences et lu des attributs. Ensuite : les répertoires du bac à sable de l’App.

Questions Fréquemment Posées

La leçon « Gestion des répertoires » est-elle gratuite ?

Oui — le texte complet de « Gestion des répertoires » 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 Swift Academy, passe à CoddyKit PRO. Le cours Swift Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Gestion des répertoires » ?

Créez, listez et supprimez des répertoires. Tu pratiques Swift 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 Swift Academy ?

Aucune expérience préalable n'est requise. Swift 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 3 sur 4.

Combien de temps prend la leçon « Gestion des répertoires » ?

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 Swift Academy ?

Oui. Chaque leçon Swift 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

  1. URL et chemins de fichiers
  2. Lecture et écriture de données
  3. Gestion des répertoires
  4. Répertoires de bac à sable de l’application
← Retour à Swift Academy