Jump to content

Searching For Directories


Recommended Posts

check out filefindnextfile

$search = FileFindFirstFile("*.*")  

; Check if the search was successful
If $search = -1 Then
    MsgBox(0, "Error", "No files/directories matched the search pattern")
    Exit
EndIf

While 1
    $file = FileFindNextFile($search) 
    If @error Then ExitLoop
    
    MsgBox(4096, "File:", $file)
WEnd

; Close the search handle
FileClose($search)
Link to comment
Share on other sites

Also look at FileGetAttrib()

[u]Helpful tips:[/u]If you want better answers to your questions, take the time to reproduce your issue in a small "stand alone" example script whenever possible. Also, make sure you tell us 1) what you tried, 2) what you expected to happen, and 3) what happened instead.[u]Useful links:[/u]BrettF's update to LxP's "How to AutoIt" pdfValuater's Autoit 1-2-3 Download page for the latest versions of Autoit and SciTE[quote]<glyph> For example - if you came in here asking "how do I use a jackhammer" we might ask "why do you need to use a jackhammer"<glyph> If the answer to the latter question is "to knock my grandmother's head off to let out the evil spirits that gave her cancer", then maybe the problem is actually unrelated to jackhammers[/quote]

Link to comment
Share on other sites

and then how can i put these values in an array?

Maybe that:

$search = FileFindFirstFile("*.*")  
$results=""

; Check if the search was successful
If $search = -1 Then
    MsgBox(0, "Error", "No files/directories matched the search pattern")
    Exit
EndIf

While 1
    $file = FileFindNextFile($search) 
    If @error Then ExitLoop
    If StringInStr ($file,".")=0 Then $results=$results&$file&"|"
WEnd

; Close the search handle
FileClose($search)
$results=StringSplit ($results,"|"); Retrieves an array. First value $results[0] is number of folders.
Link to comment
Share on other sites

I'd do it like this:

#include <Array.au3>
Dim $aryFolder[1]
$aryFolder[0]=0
$count = 0

$search = FileFindFirstFile("C:\dir\*.*")  
; Check if the search was successful
If $search = -1 Then
    MsgBox(0, "Error", "No files/directories matched the search pattern")
    Exit
EndIf

While 1
    $file = FileFindNextFile($search)
    If @error Then ExitLoop
    If FileGetAttrib($file) = "D" Then
        $count = $count + 1
        $aryFolder[0] = $count
        _ArrayAdd($aryFolder,$file)
    EndIf
WEnd

; Close the search handle
FileClose($search)

Edit: tested after I posted... looking into my errors now :think:

Edit 2: Fixed it

#include <Array.au3>
Dim $aryFolder[1]
$aryFolder[0] = 0
$count = 0

$search = FileFindFirstFile("C:\*.*")
; Check if the search was successful
If $search = -1 Then
    MsgBox(0, "Error", "No files/directories matched the search pattern")
    Exit
EndIf

While 1
    $file = FileFindNextFile($search)
    If @error Then ExitLoop
    If FileGetAttrib("C:\" &  $file) = "D" Then
        $count = $count + 1
        $aryFolder[0] = $count
        _ArrayAdd($aryFolder, $file)
    EndIf   
WEnd
; Close the search handle
FileClose($search)
_ArrayDisplay($aryFolder, "Folders")
Edited by SpookMeister

[u]Helpful tips:[/u]If you want better answers to your questions, take the time to reproduce your issue in a small "stand alone" example script whenever possible. Also, make sure you tell us 1) what you tried, 2) what you expected to happen, and 3) what happened instead.[u]Useful links:[/u]BrettF's update to LxP's "How to AutoIt" pdfValuater's Autoit 1-2-3 Download page for the latest versions of Autoit and SciTE[quote]<glyph> For example - if you came in here asking "how do I use a jackhammer" we might ask "why do you need to use a jackhammer"<glyph> If the answer to the latter question is "to knock my grandmother's head off to let out the evil spirits that gave her cancer", then maybe the problem is actually unrelated to jackhammers[/quote]

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...