Présentation détaillée : analyse des chemins de fichiers

Mise à jour : novembre 2007

Lorsque vous travaillez avec des fichiers dans votre application, vous devez souvent ne faire référence qu'à des fragments de chemin d'accès au fichier. Par exemple, vous pouvez souhaiter afficher le nom d'un fichier sans son chemin d'accès. Vous pouvez utiliser l'My.Computer.FileSystem, objet pour effectuer des tâches d'analyse de fichier.

Vous pouvez récupérer le chemin d'accès d'un fichier à l'aide de la My.Computer.FileSystem.GetParentPath, méthode. Vous pouvez récupérer le nom du fichier sans son chemin d'accès à l'aide de la My.Computer.FileSystem.GetName, méthode.

Par exemple, dans l'application Visionneuse d'images décrite dans Récupération des noms des fichiers dans un dossier, vous pouvez supprimer le chemin d'accès et afficher uniquement le nom du fichier au lieu d'afficher le chemin d'accès complet de chaque image. Dans cette leçon, vous remplirez une zone de liste avec les noms de tous les fichiers du dossier Documents.

Remarque :

Il existe dans Windows XP des dossiers spéciaux nommés MyDocuments, MyPictures et MyMusic. Dans Windows Vista, le nom de ces dossiers ne comporte pas « My » ; à la place, ils sont nommés Documents, Pictures et Music. Toutefois, le code de cette leçon s'exécutera sur Windows XP et Windows Vista.

Essayez !

Pour analyser les noms de fichier

  1. Dans le menu Fichier, cliquez sur NouveauProjet.

  2. Dans le volet Modèles de la boîte de dialogue Nouveau projet, cliquez sur Application Windows.

  3. Dans la zone Nom, tapez Analyse des chemins d'accès, puis cliquez sur OK.

    Un nouveau projet Windows Forms s'ouvre.

  4. Ajoutez un contrôle ListBox au formulaire en conservant le nom par défaut, ListBox1.

  5. Ajoutez un contrôle bouton au formulaire en laissant le nom par défaut Button1 et modifiez la valeur de la propriété Text sur Charger.

  6. Cliquez avec le bouton droit sur le formulaire et sur Afficher le code.

  7. Ajoutez le code suivant sous l'instruction Public Class Form1 au début du fichier de code. Ce code crée une variable pour le dossier Documents.

    Dim FilePath As String = _
        My.Computer.FileSystem.SpecialDirectories.MyDocuments
    
  8. Dans la liste déroulante de gauche (Nom de la classe), cliquez sur Button1.

  9. Dans la liste déroulante de droite (Nom de la méthode), cliquez sur Click pour créer le gestionnaire d'événements Button1_Click.

  10. Dans le gestionnaire d'événements Button1_Click, ajoutez le code suivant. Ce code efface tous les éléments de la zone de liste puis recherche dans les fichiers du dossier Documents et ajoute leurs noms à la zone de liste. Il utilise la My.Computer.FileSystem.GetName, méthode pour récupérer le nom du fichier sans son chemin d'accès.

    Dim FoundFile As String
    Dim FileName As String
    
    ' Clear the list box.
    Me.ListBox1.Items.Clear()
    
    ' Add each file in the Documents folder to list box.
    For Each FoundFile In My.Computer.FileSystem.GetFiles( _
        FilePath, FileIO.SearchOption.SearchTopLevelOnly)
    
        ' Add only the name of each found file to the list box.
        FileName = My.Computer.FileSystem.GetName(FoundFile)
        Me.ListBox1.Items.Add(FileName)
    
    Next
    
  11. Appuyez sur F5 pour exécuter le programme.

  12. Lorsque le formulaire s'affiche, cliquez sur le bouton Charger.

    Le nom de fichier (sans le chemin d'accès) de chaque fichier du dossier Documents s'affiche dans la zone de liste.

  13. Fermez l'application Analyse des chemins d'accès.

Combinaison du nom de fichier et du chemin d'accès au dossier

Si vous souhaitez exécuter une action sur les fichiers répertoriés, telle que l'ouverture d'un fichier, vous devez fournir le nom et le chemin d'accès du fichier. Vous pouvez utiliser la My.Computer.FileSystem.CombinePath, méthode pour combiner le nom de fichier et son chemin d'accès. L'exemple suivant indique comment afficher le chemin d'accès et nom d'un fichier dans un message lorsque vous cliquez sur le nom dans une zone de liste.

Pour combiner le nom de fichier et le chemin d'accès au dossier

  1. En mode concepteur, double-cliquez sur la Zone de liste pour ouvrir le gestionnaire d'événements SelectedIndexChanged par défaut.

  2. Dans le gestionnaire d'événements ListBox1_SelectedIndexChanged, ajoutez le code suivant. Ce code combine le chemin d'accès au dossier et le nom de fichier et affiche le nom combiné dans un message.

    MsgBox(My.Computer.FileSystem.CombinePath( _
        FilePath, Me.ListBox1.SelectedItem))
    
  3. Appuyez sur F5 pour exécuter le programme.

  4. Lorsque le formulaire s'affiche, cliquez sur le bouton Charger.

  5. Cliquez sur un nom de fichier dans la zone de liste.

  6. Un message affiche le nom et le chemin d'accès du fichier.

  7. Fermez l'application.

Étapes suivantes

Dans cette leçon, vous avez appris à analyser un chemin d'accès de fichier pour séparer le nom du fichier de son chemin d'accès. Vous avez également appris à combiner un chemin d'accès et un nom de fichier. Dans la leçon suivante, vous apprendrez à écrire dans un fichier texte.

Leçon suivante : Écriture dans un fichier texte

Voir aussi

Tâches

Récupération des noms des fichiers dans un dossier

Comment : analyser des chemins d'accès dans Visual Basic

Concepts

Développement avec My

Autres ressources

Utilisation du système de fichiers : écriture et lecture des fichiers

Visite guidée de Visual Basic