Aller au contenu principal

Obtenir la liste de tous les noms de fichiers d’un répertoire (file.list)

Déclaration

liste de fichiers, message d’erreur = file.list(chemin du fichier [, parcours complet récursif])

Paramètres

  • chemin du fichier
    Chaîne, chemin absolu du répertoire
  • parcours complet récursif (pris en charge depuis la version 20250313)
    Booléen, paramètre facultatif ; indique s’il faut parcourir récursivement les sous-répertoires et renvoyer la liste des chemins complets, false par défaut

Valeur de retour

  • liste de fichiers
    Liste séquentielle ou nil ; renvoie nil si le répertoire n’existe pas ou si le chemin est un fichier, sinon renvoie la liste des fichiers du répertoire
  • message d’erreur
    Chaîne, message d’erreur en cas d’échec

Description

Obtient la liste de tous les noms de fichiers d’un répertoire

Exemple

local list, err = file.list("/var/mobile/")
if list then
print("目录 `/var/mobile/` 中有"..#list.."个文件或目录")
for _, name in ipairs(list) do
print(name)
end
sys.alert(print.out())
else
sys.alert("`/var/mobile/` 不是目录:"..err)
end

Remarque : le code ci-dessus utilise la fonction hors de ce chapitre sys.alert

Exemple de parcours complet récursif

-- Liste des chemins complets = file.list(chemin du fichier, parcours complet récursif)
-- Obtient la liste des noms de fichiers d’un répertoire ; le deuxième paramètre contrôle la récupération récursive de la liste des chemins complets des sous-répertoires, false par défaut
list = file.list("/var/mobile/Media/1ferver", true)
nLog(list)
--[[
Sortie possible
{ -- table: 0xc4cc58a30
[1] = "/var/mobile/Media/1ferver/snippets/syntax - do __ end.snippet",
[2] = "/var/mobile/Media/1ferver/snippets/app - app.uninstall(bid).snippet",
[3] = "/var/mobile/Media/1ferver/snippets/test - snippet.snippet",
...
}
--]]

Remarque : le code ci-dessus utilise la fonction hors de ce chapitre nLog