9/10 Dans cette fiche...    

Début de page 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 Traitée sur la page...
Drives Donne accès à la liste des disques installés sur la machine. Disques
 
Méthodes du FileSystemObject
Méthode Description Traitée sur la page
BuildPath Construit un chemin complet à partir d'un chemin partiel et d'un nom de fichier.
CopyFile Duplique un fichier. Fichiers
CopyFolder Duplique un répertoire. Répertoires
CreateFolder Crée un répertoire. Répertoires
CreateTextFile Crée un fichier texte. Lecture/écriture de fichiers
DeleteFile Détruit un fichier. Fichiers
DeleteFolder Détruit un répertoire et son contenu éventuel. Répertoires
DriveExists Renvoie True si un disque existe, False sinon. Disques
FileExists Renvoie True si un fichier existe, False sinon. Fichiers
FolderExists Renvoie True si un répertoire existe, False sinon. Répertoires
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. Disques
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. Fichiers
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. Répertoires
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 : 
  • le répertoire d'installation de Windows, 
  • le répertoire système, 
  • le répertoire des fichiers temporaires.
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. Fichiers
MoveFolder Déplace un répertoire. Répertoires
OpenTextFile Ouvre un fichier en lecture ou en écriture et donne l'objet TextStream résultant.  Lecture/écriture de fichiers

 

Début de page 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 :

  1. Recopiez le code ci-dessous dans un module standard Access.
  2. Faites apparaître la fenêtre Exécution de Visual Basic Editor (Ctrl + G).
  3. Placez le curseur au milieu du listing.
  4. L'icône Exécuter Sub/UserFormCliquez 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

Résultat :

 

 << 8. Ecriture/lecture dans des fichiers texte [ Sommaire ] 10. Le Scripting Runtime dans VBScript ou ASP >> 
Cette section vous intéresse ? Abonnez-vous ! Hit-Parade  

 

 
Notions de base
Jargon Access :o)
Syntaxe SQL
Programmation ASP
Scripting Runtime

Le Grenier [FAQ Access]
Les tutoriaux Self-Access
Les Assistants Access

Les livres sur Access !

Cliquez sur un ouvrage
pour plus de détails

 
 
Forums Access
Abonnement gratuit
Télécharger...
 
 
Le saviez-vous ?
Une base contient au maximum 32768 objets. De quoi voir venir !

A demain pour une nouvelle astuce !