[R] test si repertoire ou fichier

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
koa0
Niveau 3
Niveau 3
Messages : 34
Enregistré le : jeu. 23 déc. 2010 15:38
Status : Hors ligne

[R] test si repertoire ou fichier

#1

Message par koa0 »

Bonjour à tous,
1\ J'aimerais savoir si il existe une fonction dans Autoit qui permet de tester si c'est un fichier ou si c'est un répertoire.

2\ Question en plus:
J'ai une arbo
c:\rep1\rep2\rep3\......
J'aimerais savoir comment on peut récupérer un fichier .ext qui peut être dans n'importe lequel des répertoires?

Merci d'avance
Modifié en dernier par koa0 le jeu. 14 avr. 2011 15:17, modifié 2 fois.
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#2

Message par zeshrek »

Tout d'abord enleve les marqueurs [ b ] et [ /b ] du titre, ce n'est pas conforme
1/ il ya plein de scripts qui font une exploration des répertoires et sous répertoires, qui différencient fichiers et dossiers. Y a plus qu'a chercher un peu plutot que demander qu'on le fasse pour toi...
2/ Comme je suis sympa malgré tout, je te donne un début de piste : FileExists()
Si vis pacem para bellum
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2130
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#3

Message par TommyDDR »

Voici une fonction qui test si le paramètre est un fichier où un répertoire :
► Afficher le texte
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
reverpi
Niveau 2
Niveau 2
Messages : 18
Enregistré le : mar. 11 janv. 2011 13:28
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#4

Message par reverpi »

Regarde du coté de _fileListToArray.
Il existe des UDf qui complète cette fonction pour encore plus de possibilité. Je crois si mes souvenir sont bon c'est _fileListToArrayNT.
koa0
Niveau 3
Niveau 3
Messages : 34
Enregistré le : jeu. 23 déc. 2010 15:38
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#5

Message par koa0 »

Merci tout d'abord pour vos réponses si rapide. La question étais si il y avait une fonction interne qui faisait ça. Ensuite j'avais effectivement comme piste _FileListToArrayNT. Je vais l'explorer en profondeur.
Je vous tiens au courant
A bientôt
koa0
Niveau 3
Niveau 3
Messages : 34
Enregistré le : jeu. 23 déc. 2010 15:38
Status : Hors ligne

Re: [R] test si repertoire ou fichier

#6

Message par koa0 »

Merci à vous tous. Grâce à la fonction _isfile(....) j'ai ce qu'il me faut.
Bonne fin de journée
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2130
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#7

Message par TommyDDR »

Mais de rien, ce fut un plaisir.

Pensez à remplacer [..] par [R] dans votre 1er message.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#8

Message par Tlem »

Même chose que TommyDDR, mais sur une autre approche :

Code : Tout sélectionner

Func _IsFile($Fichier)
    Local $search = FileFindFirstFile($Fichier)

    If $search = -1 Then
        Return SetError(1)
    EndIf

    $file = FileFindNextFile($search)
    If @extended = 0 Then
        Return True
    Else
        Return False
    EndIf

    FileClose($search)
EndFunc
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
matwachich
Membre émérite
Membre émérite
Messages : 986
Enregistré le : lun. 19 oct. 2009 04:04
Localisation : Algérie
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#9

Message par matwachich »

Pourquoi se casser la tête pour _isFile
un simple DirGetSize nous donne la réponse!

Code : Tout sélectionner

Fun _IsFile($sPath) ; Retourne 1 pour fichier et 0 pour dossier
Local $ret = DirGetSize($sPath)
If $ret = -1 Then
Return 1
Else
Return 0
Endif
EndFunc
Sortons VW du coté obscure! - La curiosité est un vilain défaut! Cliquez ici
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#10

Message par Tlem »

C'est une solution, mais en cas de répertoire de forte taille, le résultat risque de ce faire attendre. :mrgreen:
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2130
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#11

Message par TommyDDR »

En terme de "Casser la tête" je pense avoir déjà vu pire.
Merci Tlem pour l'utilisation du @extended avec la méthode FileFindNextFile
(-> Lira plus attentivement l'aide AutoIt ^^)


PS : Où est passé le réel Tlem ???

Le vrai Tlem n'aurais jamais laisser passer un "ce faire" !! :roll:

Ou alors vous devez être débordé :oops:
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
matwachich
Membre émérite
Membre émérite
Messages : 986
Enregistré le : lun. 19 oct. 2009 04:04
Localisation : Algérie
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#12

Message par matwachich »

En effet, j'avait pas pensé à ça! merci
Sortons VW du coté obscure! - La curiosité est un vilain défaut! Cliquez ici
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [...] test si repertoire ou fichier

#13

Message par Tlem »

TommyDDR a écrit :Le vrai Tlem n'aurais jamais laisser passer un "ce faire" !! :roll:

Ou alors vous devez être débordé :oops:
Effectivement, je bâcle un peu mes messages car je suis en stage de formation à l'étranger et que la connexion internet est lente et pas gratuite ... :mrgreen:

Mais je viens de reprendre pour 4 heures de connexion, donc ça devrait allé mieux. :roll:
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Répondre