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

Messages postés
532
Date d'inscription
lundi 5 juin 2006
Dernière intervention
6 octobre 2012
- - Dernière réponse : Kevin.Ory
Messages postés
843
Date d'inscription
mercredi 22 octobre 2003
Dernière intervention
7 janvier 2009
- 27 mai 2008 à 16:09
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
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
3
Merci
My.Computer.FileSystem.GetFiles("C:", FileIO.SearchOption.SearchTopLevelOnly, "Fichier*").Count

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 104 internautes ce mois-ci

Commenter la réponse de Renfield
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
3
Merci
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")

...

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 104 internautes ce mois-ci

Commenter la réponse de Renfield
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Dernière intervention
6 octobre 2012
0
Merci
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
Commenter la réponse de cs_MagDix
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Dernière intervention
6 octobre 2012
0
Merci
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
Commenter la réponse de cs_MagDix
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
0
Merci
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
Commenter la réponse de Renfield
Messages postés
843
Date d'inscription
mercredi 22 octobre 2003
Dernière intervention
7 janvier 2009
0
Merci
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"
Commenter la réponse de Kevin.Ory

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.