Commande ADIR( ) ...

Résolu
rubix2 Messages postés 22 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 27 août 2007 - 2 déc. 2005 à 14:29
ThierryPerretier Messages postés 103 Date d'inscription mardi 5 octobre 2004 Statut Membre Dernière intervention 6 juillet 2006 - 2 déc. 2005 à 19:56
Bonjour, j'ai besoin de lister les tables ".dbf" d'un répertoire pour les afficher dans une liste. La commande Adir est parfaite pour cela , le seul hic c'est qu'elle me formate tous les noms en majuscule et moi je voudrais respecter la casse des noms de fichiers. Par exemple si j'ai une table qui s'appelle: "miNusCule.dbf" je ne veux pas avoir "MINUSCULE.DBF" dans m'a liste . Je n'ai pas trouvé d'option sur ADIR pour spécifier qu'il ne fallait pas forcer tous en majuscule.

Nico

1 réponse

ThierryPerretier Messages postés 103 Date d'inscription mardi 5 octobre 2004 Statut Membre Dernière intervention 6 juillet 2006 1
2 déc. 2005 à 19:56
Bonjour,

Avec VFP 8 ou 9 :


ADIR(ArrayName [, cFileSkeleton [, cAttribute [, nFlag]]])


<DT>nFlag


<DD>Specifies whether the display provides DOS naming or actual case sensitivity.


nFlag
|
Description
|
----

0
,
(Default) Display represents the full file name in uppercase
,
----

1
,
Display represents original Case in names
,
----

2
,
Display follows DOS 8+3 naming convention

Solution Pour VFP6 : (ça ne fonctionnera pas avec certaines veilles versions de Windows)

oFS= createObject('Scripting.FileSystemObject')
FOR EACH oFile in oFS.GetFolder('c:\dossier').Files
IF Like("*.dbf",Lower(oFile.name))
? oFile.Name
ENDIF
ENDFOR

</DD>
3
Rejoignez-nous