DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion des fichiers externes
  • Gestion des erreurs
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Liste les sous-répertoires d'un répertoire donné et retourne les chemins complets des sous-répertoires listés.
Autre utilisation : Pour chaque répertoire trouvé, la fonction fListeRépertoire peut appeler automatiquement une procédure spécifique écrite en WLangage. Cette procédure permet de manipuler le répertoire en cours. Dans ce cas, la fonction fListeRépertoire retourne le nombre de répertoires listés.
WINDEVWEBDEV - Code ServeurEtats et RequêtesJavaCode Utilisateur (MCU)PHPAjax
UnRépertoire, ResListeRépertoire sont des chaînes
RépertoireAlister est une chaîne
RépertoireAlister = "C:\MesDocuments"
 
// Liste tous les répertoires présents dans RépertoireAlister.
ResListeRépertoire = fListeRépertoire(RépertoireAlister)
// Pour chaque répertoire trouvé
POUR TOUTE CHAÎNE UnRépertoire DE ResListeRépertoire SÉPARÉE PAR RC
// Ajout du répertoire dans la table TABLE_TableRep
TableAjoute(TABLE_TableRep, UnRépertoire)
FIN
WINDEVWEBDEV - Code ServeurEtats et RequêtesJavaCode Utilisateur (MCU)PHPAjax
RépertoireAlister = "C:\MesDocuments"
 
// Liste les répertoires présents dans RépertoireAlister.
// La procédure AttributRepertoire retourne le nombre de répertoires en lecture seule.
ResListeRépertoire = fListeRépertoire(RépertoireAlister, "AttributRépertoire")
Syntaxe

Lister les sous-répertoires d'un répertoire Masquer les détails

<Résultat> = fListeRépertoire(<Chemin du répertoire initial> [, <Options>])
<Résultat> : Chaîne de caractères
Nom des répertoires listés, séparés par des Retours Chariots (RC).
<Chemin du répertoire initial> : Chaîne de caractères
Chemin du répertoire à partir duquel la recherche des sous-répertoires doit être effectuée.
WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
AndroidWidget Android Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous Android, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires, ainsi que sur la mémoire externe (SDCard).
Universal Windows 10 App Le chemin du répertoire correspond à un chemin relatif par rapport au répertoire en cours. Le répertoire en cours correspond au répertoire des données de l'application connu.
Rappel : Seuls les répertoires présents dans le répertoire des données associé à l'application peuvent être manipulés.
iPhone/iPadWidget IOSMac Catalyst Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
<Options> : Constante ou combinaison de constantes (optionnelle) de type entier
Options pouvant être prises en compte :
fCheminUnicode<Résultat> sera une chaîne au format Unicode.
Universal Windows 10 App Cette constante est ignorée.
frInterruptibleLe parcours peut être interrompu en utilisant la touche ECHAP. Le résultat renvoyé sera alors le nom des répertoires listés jusqu'à l'interruption.
WEBDEV - Code ServeurUniversal Windows 10 App Cette constante n'a aucun effet.
frNonRécursifLe parcours est non récursif. Les sous-répertoires ne sont pas pris en compte.
frRécursif
(Valeur par défaut)
Le parcours est récursif. Les sous-répertoires sont automatiquement pris en compte.
WINDEVWEBDEV - Code ServeurEtats et RequêtesAndroidWidget AndroidiPhone/iPadWidget IOSMac CatalystJavaCode Utilisateur (MCU)PHPAjax

Liste les répertoires d'un répertoire en appelant une procédure pour chaque répertoire Masquer les détails

<Résultat> = fListeRépertoire(<Chemin du répertoire initial> , <Procédure WLangage> [, <Pointeur> [, <Options>]])
<Résultat> : Entier
Nombre de répertoires listés.
<Chemin du répertoire initial> : Chaîne de caractères
Chemin du répertoire à partir duquel la recherche des sous-répertoires doit être effectuée.
WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
AndroidWidget Android Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous Android, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires, ainsi que sur la mémoire externe (SDCard).
iPhone/iPadWidget IOSMac Catalyst Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
<Procédure WLangage> : Nom de procédure
Nom de la procédure WLangage ("callback") appelée pour chaque répertoire listé. Cette procédure permet de manipuler le répertoire en cours.
Pour plus de détails sur cette procédure, consultez Paramètres de la procédure utilisée par la fonction fListeRépertoire.
<Pointeur> : Entier optionnel
Pointeur passé à la procédure <Nom de la procédure>.
<Options> : Combinaison de constantes de type Entier
Type de parcours effectué pour les fichiers du répertoire :
fCheminUnicode<Résultat> sera une chaîne au format Unicode.
frInterruptibleLe parcours peut être interrompu en utilisant la touche ECHAP. Le résultat renvoyé sera alors le nombre de répertoires listés jusqu'à l'interruption.
WEBDEV - Code Serveur Cette constante n'a aucun effet.
frNonRécursifLe parcours est non récursif. Les sous-répertoires ne sont pas pris en compte.
frRécursif
(Valeur par défaut)
Le parcours est récursif. Les sous-répertoires sont automatiquement pris en compte.
Remarques

Gestion des erreurs

Attention : La fonction fListeRépertoire ne retourne pas de code d'erreur. Pour savoir si cette fonction a généré une erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
Liste des exemples associés :
La fonction fListeFichier Exemples unitaires (WINDEV) : La fonction fListeFichier
[ + ] Utilisation de la fonction fListeFichier et de sa syntaxe qui renvoie directement la liste des fichiers/répertoires trouvés sous la forme d'une chaine.
Composante : wd300std.dll
Version minimum requise
  • Version 10
Documentation également disponible pour…
Commentaires
option frSansRépertoireCaché inopérante en version 23
La constante frSansRépertoireCaché des options, même si elle est disponible dans l'éditeur de code, n'est pas fonctionnelle dans la version 23.
Il faut donc tester chacun des répertoires retournés pour exclure ceux dont la fonction fAttribut contient la lettre H
Arthur
24 oct. 2019
Pas d'Unicode ?
Avec des répertoires en grec et en russe, je n'arrive pas à les récupérer dans la procédure liée à fListeRépertoire : que des "???????" à la place des caractères étrangers.
J'ai demandé fCheminUNICODE au départ et même dans la procédure, j'ai déclaré les paramètres comme chaînes UNICODE (résultat Hexa : 3F<0>3F<0>...) ou buffer (dans ce cas, ça arrive en ANSI, que des "????").
Je vais voir fRep maintenant, puis fListeFichier.
Version : Express 22.
Michel VASSY
11 jan. 2018
Problème syntaxe 2
En utilisant la seconde syntaxe, vous ne pourrez pas faire de parcours non récursif même avec la constante frNonRécursif !
Damien
12 sep. 2017

Dernière modification : 20/08/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale