Programmation du FileSystemObject

Microsoft VBScript

Bibliothèque d'exécution Microsoft® Scripting - FileSystemObject Programmation du FileSystemObject
 Précédent
Suivant


Pour programmer avec le modèle d'objet FileSystemObject (FSO) :

  • Utilisez la méthode CreateObject pour créer un objet FileSystemObject.
  • Utilisez la méthode appropriée sur l'objet nouvellement créé.
  • Accédez aux propriétés de l'objet.
Le modèle d'objet FSO est contenu dans la bibliothèque de types de Scripting, qui se situe dans le fichier Scrrun.dll. Le fichier Scrrun.dll doit, par conséquent, figurer dans le répertoire système approprié de votre serveur Web pour pouvoir utiliser le modèle d'objet FSO.

Création d'un objet FileSystemObject
Commencez par créer un objet FileSystemObject en utilisant la méthode CreateObject. Dans VBScript, utilisez le code suivant pour créer une instance de FileSystemObject :

Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
Cet exemple de code montre la création d'une instance du FileSystemObject.

Dans JScript, utilisez ce code pour effectuer la même opération :

var fso;
fso = new ActiveXObject("Scripting.FileSystemObject");
Dans ces deux exemples, Scripting est le nom de la bibliothèque de types et FileSystemObject est le nom de l'objet que nous voulons créer. Vous ne pouvez créer qu'une seule instance de l'objet FileSystemObject, quel que soit le nombre de tentatives de création.

Utilisation de la méthode appropriée
Ensuite, utilisez la méthode appropriée de l'objet FileSystemObject. Par exemple, pour créer un nouvel objet, utilisez CreateTextFile ou CreateFolder (le modèle d'objet FSO ne gère pas la création ou la suppression de lecteurs).

Pour supprimer des objets, utilisez les méthodes DeleteFile et DeleteFolder de l'objet FileSystemObject ou la méthode Delete des objets File et Folder. Vous pouvez aussi copier et déplacer des fichiers et des dossiers par l'intermédiaire des méthodes appropriées.


Remarque  Certaines fonctionnalités du modèle d'objet FileSystemObject sont redondantes. Par exemple, vous pouvez copier un fichier par l'intermédiaire de la méthode CopyFile de l'objet FileSystemObject ou de la méthode Copy de l'objet File. Ces méthodes fonctionnent de la même façon. Leur présence offre une plus grande flexibilité de programmation.

Accès aux dossiers, fichiers et lecteurs existants
Pour accéder à un lecteur, à un fichier ou à un dossier existant, utilisez la méthode "get" appropriée ou l'objet FileSystemObject :

  • GetDrive
  • GetFolder
  • GetFile
Pour accéder à un fichier existant dans VBScript :

Dim fso, f1
Set fso = CreateObject("Scripting.FileSystemObject")
Set f1 = fso.GetFile("c:\test.txt")
Pour effectuer la même opération dans JScript, utilisez le code ci-dessous :

var fso, f1;
fso = new ActiveXObject("Scripting.FileSystemObject");
f1 = fso.GetFile("c:\\test.txt");
N'utilisez pas les méthodes "get" pour les objets nouvellement créés, puisque les fonctions "create" ont déjà renvoyé un descripteur vers cet objet. Par exemple, si vous créez un nouveau dossier en utilisant la méthode CreateFolder, n'utilisez pas la méthode GetFolder pour accéder à ses propriétés comme Name, Path, Size, etc. Affectez juste à une variable la fonction CreateFolder pour obtenir un descripteur vers le dossier nouvellement créé, puis accédez à ses propriétés, méthodes et événements. Pour effectuer la même opération dans VBScript, utilisez le code ci-dessous :

Sub CreateFolder
  Dim fso, fldr
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set fldr = fso.CreateFolder("C:\MyTest")
  Response.Write "Dossier créé: " & fldr.Name
End Sub
Pour affecter à une variable la fonction CreateFolder dans JScript, utilisez la syntaxe suivante :

function CreateFolder()
{
  var fso, fldr;
  fso = new ActiveXObject("Scripting.FileSystemObject");
  fldr = fso.CreateFolder("C:\\MyTest");
  Response.Write("Created folder: " + fldr.Name);
}

Accès aux propriétés de l'objet
À partir du descripteur d'un objet, vous avez accès à ses propriétés. Par exemple, pour obtenir le nom d'un dossier particulier, commencez par créer une instance de l'objet, puis obtenez un descripteur vers cet objet en utilisant la méthode appropriée (dans ce cas, la méthode GetFolder puisque le dossier existe déjà).

Utilisez ce code pour obtenir un descripteur vers la méthode GetFolder dans VBScript :

Set fldr = fso.GetFolder("c:\")

Pour effectuer la même opération dans JScript, utilisez le code ci-dessous :

var fldr = fso.GetFolder("c:\\");
Vous disposez désormais d'un descripteur vers un objet Folder ; vous pouvez lire sa propriété Name. Pour effectuer la même opération dans VBScript, utilisez le code ci-dessous :

Response.Write "Le nom du dossier est: " & fldr.Name
Pour lire la valeur d'une propriété Name dans JScript, utilisez la syntaxe suivante :

Response.Write("Le nom du dossier est: " + fldr.Name);
Pour connaître la date de dernière modification d'un fichier, utilisez la syntaxe VBScript suivante :

Dim fso, f1
Set fso = CreateObject("Scripting.FileSystemObject")
' Obtient un objet File à interroger.
Set f1 = fso.GetFile("c:\detlog.txt")  
' Affiche les informations.
Response.Write "Dernière modification du fichier: " & f1.DateLastModified 
Pour effectuer la même opération dans JScript, utilisez le code ci-dessous :

var fso, f1;
fso = new ActiveXObject("Scripting.FileSystemObject");
// Obtient un objet File à interroger.
f1 = fso.GetFile("c:\\detlog.txt");  
// Affiche les informations.
Response.Write("Dernière modification du fichier: " + f1.DateLastModified);