VB.Net Compter le nombre de Fichier (Fonction File) [Résolu]

Signaler
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
-
Kevin.Ory
Messages postés
843
Date d'inscription
mercredi 22 octobre 2003
Statut
Membre
Dernière intervention
7 janvier 2009
-
Salut.


Je cherche un moyen de compter le nombre de fichier que le nom de fichier commence par une valeur défini.


Exemple je cherche à savoir combien de fichier comment par le mot "Fichier" dans un répertoire donné


Comment est-il possible de faire cela, c'est possible ???


J'ai regarder avec la fonction File mais je ne trouve rien qui fait mon bonheur..


Si c'est possible, si quelqu'un peut me dionner un coup de main


Merci

6 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
60
My.Computer.FileSystem.GetFiles("C:", FileIO.SearchOption.SearchTopLevelOnly, "Fichier*").Count
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
60
je piges pas ou tu bloques....

tu recodes ça ainsi :

Public Function CompterFichiers(Byref vsFolder As String, byref vsPattern As String) As Integer
Return My.Computer.FileSystem.GetFiles(vsFolder, FileIO.SearchOption.SearchTopLevelOnly, vsPattern).Count
End Function

et tu es libre de faire ce que tu veux...

a = CompterFichiers("C:", "*.txt")
b = CompterFichiers("C:\Logs", "log*.txt")
c = CompterFichiers("C:\Logs", "log 2008-05-*.txt")

...
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
1
Merci Renfield

Mais j'ai une petite question car ca ne fonctionne pas...
La variable "Fichier*" ne vaut rien.


Je m'explique...
Je ne chercher pas toujours un nomde fichier qui débutera par le mot Fichier


Je veux mettre une variable qui sera modifier


Dim Fichier as String
...


Fichier = Fichier22


Comment faire pour compter le nombre de fichier.* qui comment par Fichier22
Bref connaître le nombre de fichier qui est comme la variable Fichier


C'est clair ????


merci de ton aide
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
1
Re... et bien voilà


 



Dim



test

As



Integer
Dim Repertoire AsString = "C:\Fichier\Test"
Dim Fichier
As
String =
"Fichier22" ' Cette ligne est à titre d'exemple


test =




My
.Computer.FileSystem.GetFiles(Repertoire, FileIO.SearchOption.SearchTopLevelOnly,



"Fichier*"




).
Count

Donc test = 0 et je devrais avoir 2 car j'ai 2 fichier qui débute par Fichier22

Ce que je ne pige pas c'est comment faire pour que Fichier valle quelque chose car il est entre guillemet et donc ca ne fonctionne pas..

Tu comprends... ???
merci de ton aide
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
60
tu confonds la chaine de caractères "Fichier"
et la variable nommée Fichier (qui dans ton contient la chaine "Fichier22")

fais une concaténation de ta variable :


test = CompterFichiers(Repertoire, Fichier & "*")

ou bien

test = My .Computer.FileSystem.GetFiles(Repertoire, FileIO.SearchOption.SearchTopLevelOnly, Fichier & "*" ). Count

si tu ne souhaites pas utiliser la fonction que je t'ai filé plus haut
Messages postés
843
Date d'inscription
mercredi 22 octobre 2003
Statut
Membre
Dernière intervention
7 janvier 2009
5
Salut,

Du texte en "" dans le code est une valeur texte fixe, et non une variable. Relis ce que as écris Renfield:

Return My.Computer.FileSystem.GetFiles(vsFolder, FileIO.SearchOption.SearchTopLevelOnly, vsPattern).Count

Donc ton "Fichier" il ne faut pas le mettre entre "":

Dim Repertoire As String = "C:\Fichier\Test"
DimFichier
As String =
"Fichier22*"
My.Computer.FileSystem.GetFiles(Repertoire, FileIO.SearchOption.SearchTopLevelOnly, 
Fichier).Count

Il faut aussi ajouter une * après "Fichier22"