Avatar ·

Comment obtenir la liste des fichiers et dossiers dans un répertoire en Go ? (ioutil.ReadDir vs os.ReadDir)

Bonjour à tous ! Je viens de commencer à apprendre Go et je suis confronté à une tâche : lire le contenu d'un dossier et afficher la liste de tous les fichiers et sous-dossiers. J'ai cherché sur Google et trouvé plusieurs méthodes, mais je n'arrive pas à comprendre laquelle est correcte et moderne. Par exemple, j'ai essayé d'utiliser `ioutil.ReadDir`, mais dans la documentation il est dit que ce package est deprecated (obsolète). J'ai aussi vu `os.ReadDir` et `filepath.Walk`. J'ai ce code : ```go package main import ( "fmt" "io/ioutil" "log" ) func main() { files, err := ioutil.ReadDir(".") if err != nil { log.Fatal(err) } for _, f := range files { fmt.Println(f.Name()) } } ``` Il fonctionne, mais l'IDE souligne `ioutil` et dit qu'il est obsolète. Comment obtenir correctement la liste des fichiers en Go 1.16+ ? Dois-je trier le résultat ? Comment distinguer un fichier d'un dossier ? Et y a-t-il une différence entre `os.ReadDir` et `ioutil.ReadDir` autre que le nom ? Indiquez-moi, s'il vous plaît, les best practices pour cette tâche.