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 :

Utiliser la méthode GetFiles pour des sous-dossiers


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Analyse système
    Inscrit en
    Avril 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Avril 2019
    Messages : 10
    Par défaut Utiliser la méthode GetFiles pour des sous-dossiers
    Bonjour à tous,

    Voici le but du programme que je cherche à réaliser:
    Spécifier un dossier dans une textbox, et déplacer tous les fichiers .xls contenus dans des sous dossiers du dossier spécifié
    Voici mon code (je suppose que mon erreur est basique mais pas faute d'avoir cherché, je ne trouve pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
            Dim Excel As String
            Dim Fichiers As String() = Directory.GetFiles(Reglages3.TB_DOSSIER.Text, SearchOption.AllDirectories)
            For Each Excel In Fichiers
                Dim extension As String = Path.GetExtension(Excel)
                Dim nom_fichier As String = Path.GetFileName(Excel)
                Dim test As String = "LEAP_VCI"
                If extension = ".xls" And nom_fichier.Contains(test) Then
                    Dim combinaison As String = Path.Combine(Reglages3.TB_DOSSIER2.Text, nom_fichier)
                    My.Computer.FileSystem.MoveFile(Excel, combinaison, True)
    Merci d'avance pour votre précieuse aide!

    EDIT: L'erreur est sur la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim Fichiers As String() = Directory.GetFiles(Reglages3.TB_DOSSIER.Text, SearchOption.AllDirectories)
    Puisqu'il me renvoie un Fichiers.Length = 0
    Je ne comprends donc pas pourquoi il ne récupère pas les fichiers.. Sûrement pas la bonne synthaxe..

  2. #2
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Bonjour,

    Ci-joint, CopierDossier.pdf. C'est un extrait de cours informant sur la copie récursive des fichiers d'un dossier. Tu pourras sûrement l’adapter à ton problème.

    Pour ce qui est du code que tu présentes dans ton message, Path.GetFileName(Excel) m'intrigue : tu cherches des fichiers dont le nom ET l'extension sont identiques (Excel) ?

    Bonne soirée,

  3. #3
    Membre régulier
    Homme Profil pro
    Analyse système
    Inscrit en
    Avril 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Avril 2019
    Messages : 10
    Par défaut
    Merci beaucoup pour ce cours c'est exactement ce qu'il me fallait, j'ai trouvé solution à mon problème! C'est extrait d'un cours libre d'accès ou payant?
    Sinon oui c'est bien ça, je cherche des fichiers Excel et qui comportent une certaine chaine de caractère dans leur nom

  4. #4
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Bonjour,

    Dans le code que je t'ai envoyé, tu disposes du nom de chaque fichier, un à la fois, dans la variable UnFichier.
    Il est donc facile de décider dans la boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If UnFichier.IndexOf(SousChaineCherchee) > -1 Then
     ... action car SousChaineCherchee est présente dans le nom du fichier
    Else
     ... action car SousChaineCherchee N'est PAS présente dans le nom du fichier
    End If
    L'extrait de cours que j'ai envoyé provient, comme tout le reste de ma documentation, de syllabus que j'ai produits. Mais ces syllabus sont des supports de cours et non des manuels à l'usage d'autodidactes.
    En classe, leur contenu est expliqué, discuté, reformulé, ..., et dans le forum, l'extrait posté avec un message est choisi dans le contexte de la discussion.
    Le contenu de ces syllabus est tout juste imbuvable sans le prof pour le servir ...

    Pour les autodidactes, il existe de nombreux excellents cours sur ce forum. Fouille un peu et tu verras ...

    Par ailleurs, je manquerai pas de t'envoyer d'autres extraits s'ils sont susceptibles de t'aider à résoudre un problème donné.

    Bonne journée,

Discussions similaires

  1. [WS 2008] Perte des paramètres de sécurité pour les sous-dossiers
    Par Invité dans le forum Windows Serveur
    Réponses: 0
    Dernier message: 26/05/2010, 15h21
  2. utiliser une fonction VOID pour des blocs relationnels ?
    Par ctobini dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 11/09/2006, 17h16
  3. Réponses: 4
    Dernier message: 29/08/2006, 19h02
  4. Supprimer des sous-dossiers selon des critères
    Par Dertron dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 18/01/2006, 15h33
  5. Creation d'un dossier et des sous dossier
    Par fraizas dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 14/11/2005, 17h30

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