Page 1 sur 1

[R] Compter le nombre de fichier dans un répertoire

Posté : mar. 12 mai 2009 10:35
par majax999
Bonjour à tous,

Je souhaiterais savoir comment compter le nombre de fichiers dans un répertoire.

Merci d'avance pour votre aide.

Bonne journée.

@++
mAjAx

Re: Compter le nombre de fichier dans un répertoire

Posté : mar. 12 mai 2009 11:16
par Yogui

Code : Tout sélectionner

$array = DirGetSize("c:\",1)
MsgBox(0,"information","le repertoire cible contient "&$array[1] & " fichiers")

Re: Compter le nombre de fichier dans un répertoire

Posté : mar. 12 mai 2009 15:39
par majax999
Merci pour ta réponse rapide.
Ton code fait bien ce que je veux mais trop .... ;)

Je m'explique :
J'ai un répertoire avec des fichiers à la racine et un autre répertoire où ces fichiers sont déplacés après traitement.
Je souhaiterais connaitre le nombre de fichier à la racine.
ton code mon prend tout les fichiers (racine + le répertoire)

Je regarde avec ce que tu m'a fait passé mais si tu a une idée elle serait la bienvenue.

@++

mAjAx

Re: Compter le nombre de fichier dans un répertoire

Posté : mar. 12 mai 2009 21:13
par Yogui
Je suis désolé mais je ne sais plus ou j'ai trouvé ce code certainement sur le forum anglais...

Code : Tout sélectionner

Dim $FolderName = "C:\WINDOWS\SYSTEM32"
Dim $FileCount = 0
 
ScanFolder($FolderName)
 
MsgBox(0,"Terminé","Il y à " & $FileCount & " fichier dans "&$FolderName)
 
Func ScanFolder($SourceFolder)
    Local $Search
    Local $File
    Local $FileAttributes
    Local $FullFilePath

    $Search = FileFindFirstFile($SourceFolder & "\*.*")
 
    While 1
        If $Search = -1 Then
            ExitLoop
        EndIf

        $File = FileFindNextFile($Search)
        If @error Then ExitLoop

        $FullFilePath = $SourceFolder & "\" & $File
        $FileAttributes = FileGetAttrib($FullFilePath)

        If StringInStr($FileAttributes,"F") Then
            ScanFolder($FullFilePath)
        Else
            LogFile($FullFilePath)
        EndIf
 
    WEnd
 
    FileClose($Search)
EndFunc
 
Func LogFile($FileName)
    FileWriteLine(@ScriptDir & "\FileList.txt",$FileName)
    $FileCount += 1
    ToolTip($FileName,0,0)
EndFunc

Re: Compter le nombre de fichier dans un répertoire

Posté : mar. 12 mai 2009 22:37
par Ahbadiane
Yogui, tu avais quasi la bonne réponse la première fois - il fallait combiner les flags 1 et 2 (et donc mettre 3) à la commande DirGetSize

Code : Tout sélectionner

dim $array = DirGetSize("c:\temp\",[b]3[/b])
MsgBox(0,"information","le repertoire cible contient "&$array[1] & " fichiers")
 

Re: [R] Compter le nombre de fichier dans un répertoire

Posté : mer. 13 mai 2009 08:59
par majax999
Bonjour,

Je viens de tester avec le Flag à 3 et ça marche parfaitement :lol: .
Merci pour votre aide.


mAjAx