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

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

6 réponses

Répondre au sujet
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 27 mai 2008 à 14:52
+3
Utile
My.Computer.FileSystem.GetFiles("C:", FileIO.SearchOption.SearchTopLevelOnly, "Fichier*").Count
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 27 mai 2008 à 15:30
+3
Utile
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")

...
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
cs_MagDix 532 Messages postés lundi 5 juin 2006Date d'inscription 6 octobre 2012 Dernière intervention - 27 mai 2008 à 15:22
0
Utile
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
cs_MagDix 532 Messages postés lundi 5 juin 2006Date d'inscription 6 octobre 2012 Dernière intervention - 27 mai 2008 à 15:51
0
Utile
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
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 27 mai 2008 à 16:05
0
Utile
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
Kevin.Ory 843 Messages postés mercredi 22 octobre 2003Date d'inscription 7 janvier 2009 Dernière intervention - 27 mai 2008 à 16:09
0
Utile
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.