L'objet FileSystemObject
Comme vous l'avez vu dans les pages précédentes, le FileSystemObject est l'objet racine de la hiérarchie, celui qui permet d'accéder à tout votre système de fichiers. Cette page apporte quelques compléments sur cet objet.
Les propriétés/méthodes qui ont été traitées dans les pages précédentes sont seulement résumées ici. Un lien à droite de l'option vous donne dans ce cas un accès direct à la page concernée.
Propriétés du FileSystemObject |
|
| Propriété | Description |
Drives |
Donne accès à la liste des disques installés sur la machine. |
Méthodes
du FileSystemObject |
|
| Méthode | Description |
BuildPath |
Construit un chemin complet à partir d'un chemin partiel et d'un nom de fichier. |
CopyFile |
Duplique un fichier. |
CopyFolder |
Duplique un répertoire. |
CreateFolder |
Crée un répertoire. |
CreateTextFile |
Crée un fichier texte. |
DeleteFile |
Détruit un fichier. |
DeleteFolder |
Détruit un répertoire et son contenu éventuel. |
DriveExists |
Renvoie True
si un
disque existe, False sinon. |
FileExists |
Renvoie True
si un
fichier existe, False sinon. |
FolderExists |
Renvoie True
si un
répertoire existe, False sinon. |
GetAbsolutePathName |
Transforme un chemin
relatif (du style ..\access) en chemin absolu (du style : C:\Mes documents\access). |
GetBaseName |
Extrait le nom de base
d'un fichier à partir d'un chemin complet. Par exemple, C:\Mes documents\access\test.mdb
donne test. |
GetDrive |
Renvoie un objet Drive
(disque) permettant d'obtenir des informations sur l'un des disques de
votre système. |
GetDriveName |
Obtient le nom d'un disque à partir d'un chemin de fichier ou de répertoire complet. |
GetExtensionName |
Extrait l'extension
d'un chemin complet. Par exemple, C:\Mes documents\access\test.mdb
donne mdb |
GetFile |
Crée un objet File
(fichier) donnant des informations sur un fichier existant et permettant
de le manipuler. |
GetFileName |
Extrait le nom de
fichier à partir d'un chemin complet. Par exemple, C:\Mes documents\access\test.mdb
donne test.mdb |
GetFileVersion |
Lit le numéro de version d'un fichier, si celui-ci en comporte une. |
GetFolder |
Crée un objet Folder
(répertoire) donnant des informations sur un répertoire existant et
permettant de le manipuler. |
GetParentFolderName |
Donne le nom du répertoire parent, par rapport à un répertoire ou un fichier de départ. |
GetSpecialFolder |
Crée un objet Folder
permettant d'obtenir des informations sur l'un des 3 répertoires
systèmes que sont :
|
GetStandardStream |
Crée un objet TextStream
correspondant à l'une des trois sorties de texte standard : StdIn,
StdOut, StdErr. |
GetTempName |
Fournit, sous forme d'une chaîne de caractères, un nom de fichier temporaire. |
MoveFile |
Déplace un fichier. |
MoveFolder |
Déplace un répertoire. |
OpenTextFile |
Ouvre un fichier en
lecture ou en écriture et donne l'objet TextStream résultant. |
Applications pratiques
Le programme ci-dessous illustre les méthodes qui n'auraient pas été traitées dans les pages précédentes. Pour l'exécuter :
- Recopiez le code ci-dessous dans un module standard Access.
- Faites apparaître la fenêtre de Visual Basic Editor (Ctrl + G).
- Placez le curseur au milieu du listing.
- Cliquez sur l'icône Exécuter Sub/UserForm.

' ---
' FILESYSTEMOBJECT / EXEMPLES
' ---
' (c) 2003, Hervé Inisan - www.self-access.com
'
' La fonction FSODemo() présente quelques aspects
' complémentaires du FileSystemObject.
Function FSODemo()
Dim fso As Scripting.FileSystemObject
Dim strFichier As String
' Un nom de fichier quelconque pour tester !
strFichier = "C:\Mes documents\Divers\test.txt"
' Créer une instance du FileSystemObject
Set fso = New Scripting.FileSystemObject
' Créer un chemin complet à partir d'un chemin partiel et
' d'un nom de fichier
Debug.Print "BUILD PATH: ", , fso.BuildPath("C:\Mes documents\", "test.txt")
' Afficher le chemin absolu du répertoire courant
Debug.Print "ABSOLUTE PATHNAME: ", fso.GetAbsolutePathName(".")
' Construire le chemin absolu d'un fichier (existant ou non)
' à partir du répertoire courant
Debug.Print "ABSOLUTE PATHNAME (2): ", fso.GetAbsolutePathName("test.txt")
' Extraire quelques infos à partir d'un nom de fichier complet.
' Dans l'ordre :
' - le nom du fichier (sans chemin)
' - le nom de base (nom de fichier sans chemin et sans extension)
' - l'extension
' - le nom du disque
' - le chemin du répertoire parent
Debug.Print "FILE NAME: ", , fso.GetFileName(strFichier)
Debug.Print "BASE NAME: ", , fso.GetBaseName(strFichier)
Debug.Print "EXTENSION NAME: ", fso.GetExtensionName(strFichier)
Debug.Print "DRIVE NAME: ", , fso.GetDriveName(strFichier)
Debug.Print "PARENT FOLDER NAME: ", fso.GetParentFolderName(strFichier)
' Afficher le nom d'un fichier temporaire
Debug.Print "TEMP NAME: ", , fso.GetTempName()
' Afficher les chemins des répertoires Windows, System et Temp
Debug.Print "WINDOWS: ", , fso.GetSpecialFolder(WindowsFolder).Path
Debug.Print "SYSTEM: ", , fso.GetSpecialFolder(SystemFolder).Path
Debug.Print "TEMP: ", , fso.GetSpecialFolder(TemporaryFolder).Path
' Afficher la version de la calculatrice
Debug.Print "FILE VERSION: ", fso.GetFileVersion("C:\Windows\System32\Calc.exe")
' Libérer les objets
Set fso = Nothing
End Function

Dans cet article...
Article mis à jour le 23/06/2005
Propriétés du FileSystemObject
Méthodes
du FileSystemObject