Maison > développement back-end > Golang > Comment puis-je répertorier efficacement le contenu d'un répertoire dans Go ?

Comment puis-je répertorier efficacement le contenu d'un répertoire dans Go ?

Patricia Arquette
Libérer: 2024-12-21 02:40:10
original
828 Les gens l'ont consulté

How Can I Efficiently List a Directory's Contents in Go?

Répertorier efficacement le contenu d'un répertoire dans Go

Les programmeurs rencontrent souvent le besoin de répertorier les fichiers et les dossiers dans un répertoire spécifique dans Go. Cependant, naviguer dans l’environnement des packages peut s’avérer difficile. Cet article répond à cette exigence et propose une solution.

La fonction filepath.Walk, bien qu'utile, n'est peut-être pas la meilleure option pour répertorier le contenu d'un répertoire sans approfondir les sous-répertoires. La solution réside dans le package os et la fonction ReadDir.

Comme décrit dans la documentation officielle, ReadDir "lit le répertoire nommé, renvoyant toutes ses entrées de répertoire triées par nom de fichier". Le résultat est une tranche de types os.DirEntry.

Voici un exemple simple qui utilise la fonction ReadDir :

package main

import (
    "fmt"
    "os"
     "log"
)

func main() {
    entries, err := os.ReadDir("./")
    if err != nil {
        log.Fatal(err)
    }
 
    for _, e := range entries {
            fmt.Println(e.Name())
    }
}
Copier après la connexion

Ce code parcourt le répertoire actuel et imprime les noms de toutes les entrées, y compris les fichiers et les dossiers. Notez que les dossiers ne sont pas spécifiquement marqués. Pour faire la distinction entre les deux, vous pouvez utiliser la méthode IsDir() fournie par le type os.DirEntry.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal