Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    86

    [VB6] contare file con estensione

    ho necessità di contare dei file con una determinata estensioni all'interno di una penna usb. ho già fatto un funzione che mi conta tutti i file presenti nella penna (anche nelle sotto cartelle) e non so come adattare il codice per contarmi i file con una determinata estensione. l'estensione vorrei passarla come parametro mi aiutate cortesemente?

    codice:
    Function contaFile(ByVal StrFolder)
    
    Dim fs 
    Set fs = CreateObject("scripting.filesystemobject")
        Dim ParentFld
        Dim SubFld
        Dim IntCount
        Set ParentFld = fs.GetFolder(StrFolder)
            ' conto i file nella cartella corrente
        IntCount = ParentFld.Files.Count
        For Each SubFld In ParentFld.SubFolders
            ' conto tutti i file in ogni sotto cartella
            IntCount = IntCount + contaFile(SubFld.Path)
        Next
        ' restituisco il totale dei file
        contaFile = IntCount
    End Function

  2. #2
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Nota: il FileSystemObject si dichiara usando una variabile oggetto 'FSO' (non 'fs' come hai fatto tu); non è un obbligo (ovviamente) ma è lo standard.

    Devi modificare la firma aggiungendo l'estensione in maiuscolo, es. "TMP":

    codice:
    Dim sFileSpec
    sFileSpec = "TMP"
    
    Function contaFile(StrFolder, sFileSpec)
    poi ti basta integrare il controllo sull'estensione di ogni file, ad esempio:

    codice:
       Dim aFile, AllFiles, aFolder   
       Set AllFiles = aFolder.Files
       For Each aFile In AllFiles
          If UCase(FSO.GetExtensionName(aFile.Path)) = sFileSpec Then
              'e qui incrementi il tuo contatore
          End If
       Next

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    86
    grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.