IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Rechercher fichier dans repertoire avec le début du nom


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Avril 2011
    Messages : 42
    Points : 38
    Points
    38
    Par défaut Rechercher fichier dans repertoire avec le début du nom
    Bonjour

    Je travaille sur un projet dans lequel je voudrais rechercher un fichier dans un répertoire défini
    Pour cela je défini mon répertoire source et le nom de mon fichier et j'utilise le file.move.
    Jusqu'ici tous vas bien.

    Le projet se corse car je voudrais chercher un fichier sans avoir le nom exact.
    Le but est de permettre a des élevé de déposé un fichier dans un répertoire que je voudrais ensuite déplacer. Mes étudiants vont déposé leurs répertoire alors le nom suivant "NomDevoir_NomFamille".

    Je voudrais mettre en place une sorte de boucle qui parcourt mon répertoire cible et recherche un fichier qui commence par "NomDevoir_" + quelquechose pour faire mon traitement.

    Exist il a votre connaissance une fonction dans file qui mettrai de recherche un fichier avec le debut du nom ??

    Merci d'avance

  2. #2
    Membre éprouvé
    Homme Profil pro
    Programmeur analyste
    Inscrit en
    Février 2009
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur analyste
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2009
    Messages : 546
    Points : 1 116
    Points
    1 116
    Par défaut
    Bonjour,
    voila
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
            Dim di As System.IO.DirectoryInfo = New System.IO.DirectoryInfo("C:\votre chemin")
            For Each fi As System.IO.FileInfo In di.GetFiles
                'ListBox2.Items.Add(fi.FullName)
                Try
                    ToolStripStatusLabel1.Text = fi.Name
                    StatusStrip1.Update()
                    If str.Left(fi.Name, 10) = "NomDevoir_"  Then
                        'Votre traitement
                        'pour placer dans une listbox
                        ListBox2.Items.Add(fi.Name)
                    End If
                Catch
                End Try
            Next

  3. #3
    Membre chevronné Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Points : 1 961
    Points
    1 961
    Par défaut
    Gnain, je pense que "NomDevoir_" ne ferait pas toujours 10 lettres, donc ta méthode Left() risquerait de ne pas marcher.

    Citation Envoyé par Netpasnet Voir le message
    Exist il a votre connaissance une fonction dans file qui mettrai de recherche un fichier avec le debut du nom ??

    Merci d'avance

    Pas dans File non, mais dans String oui !

    MSDN : String.StartsWith, Méthode

    Il ne te reste plus qu'à parcourir tes fichiers et pour chaque nom de fichier tester le début du nom.

    Ou si tu es plus joueur c'est aussi possible en LINQ avec la liste des fichiers.

    EDIT: Bon j'ai cherché un petit peu et en fait c'est possible aussi avec DirectoryInfo.GetFiles, méthode qui prend un Pattern en paramètre. (Ex: *.txt est un pattern qui retourne tous les fichiers textes)

    Donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    New DirectoryInfo(TonPath).GetFiles("NomDevoir*.*")
    Aider les autres, c'est encore la meilleure façon de s'aider soi-même. Martin Gray

    ToDo : Faire une ToDo List

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Bonjour,

    Sinon il existe aussi la possibilité d'utiliser Directory.EnumerateFiles

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
            Dim CheminRecherche As String = "D:\data\" ' ton chemin
            Dim patternFichiers As String = "NomDevoir_*.*"
            For Each NomdeFichier As String In Directory.EnumerateFiles(CheminRecherche, patternFichiers, SearchOption.TopDirectoryOnly)
                ' traitement
                Console.WriteLine(NomdeFichier)
            Next
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

Discussions similaires

  1. macro compter fichier dans repertoire
    Par PC81 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/07/2008, 09h05
  2. recherche dossier dans repertoire + copie
    Par battit64 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 23/04/2008, 20h35
  3. [WD10] lister Fichier dans repertoire
    Par jeruzalem dans le forum WinDev
    Réponses: 3
    Dernier message: 05/12/2007, 12h28
  4. [VBA-E]Lister fichiers dans repertoires et sous-rep
    Par megapacman dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/05/2007, 16h55
  5. Mettre le nom du fichier dans TextEdit ?? Avec CFileDialog
    Par P'tit Troll dans le forum Windows
    Réponses: 2
    Dernier message: 19/04/2005, 17h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo