Introduction
Mise en oeuvre
Présentation du modèle objet
Objet FileSystemObject
Objet Drive
Objet Folder
Objet File
ObjetTextStream
Gestion des unités logiques
Code VB : Afficher la liste des unités logiques disponibles
Code VBScript : Afficher la liste des unités logiques disponibles
Afficher le type de système de fichiers d’une unité logique (FAT, NTFS…)
Afficher l’espace disponible d’une unité logique
Gestion de dossiers
Renommer un dossier
Afficher les propriétés d’un dossier
Code VB : Fournir la liste des sous-dossiers et des fichiers d’un dossier
Création d’un dossier
Suppression d’un dossier
Exemple utilisant l’objet Folder
Exemple utilisant l’objet FileSystemObject
Gestion de fichiers
Création d’un fichier texte
Lecture / Ecriture de fichiers
Lecture d’un fichier complet
Code VB: Lecture d’un fichier ligne à ligne
Ecriture dans un fichier
Informations complémentaires
Pour naviguer dans le modèle objet
Quelques articles ou fiches techniques
Ou trouver des informations complémentaires?
Introduction
Ce document présente comment utiliser le modèle objet FileSystemObject (ou fso) depuis Visual Basic ou Visual Basic Script. Ce modèle objet a pour but de permettre de manipuler simplement des fichiers, des dossiers et des unités logiques. Il permet notamment de créer, de modifier, de supprimer ou de déplacer des dossiers ou bien des fichiers. Depuis Visual Basic, il est bien sûr toujours possible d’utiliser les méthodes classiques de gestion de fichier, à savoir par exemple Open pour ouvrir un fichier, Dir pour lister le contenu d’un répertoire, ou certaines APIs comme GetdiskFreeSpace. Bien que le modèle objet consomme un peu plus de ressources que l’appel direct à ces fonctions, il est nettement plus simple à mettre en œuvre. Il a aussi l’avantage de regrouper en un seul modèle objet tout ce qui a trait à la gestion de fichiers. Enfin, depuis un langage de script comme VBScript ou JScript, ce modèle est fréquemment utilisé, étant donné qu’il n’est pas possible d’appeler directement des APIs.
Mise en oeuvre
Ce modèle est implémenté dans la Dll « Windows Script Runtime » nommé Scrrun.dll. Cett Dll est fournie par différents produits tels que Internet Explorer, Microsoft Office, ou bien Visual Basic. La dernière version de Windows Script Runtime disponible à ce jour est la version 5.5, et
est téléchargeable depuis le lien suivant: http://msdn.microsoft.com/scripting/Pour pouvoir utiliser fso depuis Visual Basic en early binding, il suffit donc d’ajouter une référence à « Microsoft Scripting Runtime » depuis le menu Projet Références de l’IDE Visual Basic.
Présentation du modèle objet
Le modèle objet FSO expose les objets suivants
– Drive
– Folder
– File
– FileSystemObject
– TextStream
Certaines actions peuvent se coder de deux manières différentes: soit en utilisant une propriété ou une méthode de l’objet lui-même, soit en utilisant une méthode de l’objet FileSystemObject.
Par exemple, pour copier un fichier, on peut utiliser ma méthode Copy d’un objet File, soit utiliser la méthode CopyFile de l’objet FileSystemObject.
Objet FileSystemObject
Cet objet représente un système de fichiers. C’est au travers de cet objet que la création, la suppression, le déplacement de fichiers ou de dossiers peuvent être réalisés. Cet objet permet de pointer vers des dossiers ou des fichiers particuliers.
L’objet FileSystemObject expose la propriété suivante:
Drives
Et les méthodes suivantes :
BuildPath, CopyFile, CopyFolder, CreateFolder, CreateTextFile, DeleteFile, DeleteFolder,DriveExists, FileExists, FolderExists, SetAbsolutePathName, GetBaseName, GetDrive, GetDriveName, GetExtensionName, GetFile, GetFileName, GetFileVersion, GetFolder, GetParentFolderName, GetSpecialFolder, GetTempName, MoveFile, MoveFolder, OpenTextFile.
Objet Drive
Cet objet représente une unité logique (disque dur, CD-ROM, unité montée en mémoire…) Fso expose aussi une collection Drives, accessible en lecture seule, qui contient l’ensemble des unités logiques disponibles. Cette collection est accessible au travers de l’objet
FileSystemObject.
La programmation des objets Drive permet d’obtenir des informations sur le système de fichier d’une unité logique, la place utilisée ou disponible sur cette unité, son type…etc…Cet objet expose les propriétés suivantes :
AvailableSpace, DriveLetter, DriveType, FileSystem, FreeSpace, IsReady, Path,RootFolder, SerialNumber, ShareName, TotalSize, VolumeName.
Objet Folder
Cet objet représente un dossier du système de fichiers. C’est au travers de cet objet que la création, la suppression, le déplacement de dossiers peuvent être réalisés. Un objet Folder possède une série de propriétés telles que sa date de création, son chemin long, son chemin court, ses attributs…etc…
Comment utiliser le modèle objet FileSystemObject ? (349 KO) (Cours DOC)