Bibliothèque d'exécution Microsoft® Scripting - FileSystemObject
Utilisation des lecteurs et des dossiers |
Précédent Suivant |
Le modèle d'objet FileSystemObject (FSO) vous permet d'utiliser dans vos programmes les lecteurs et les dossiers comme vous le faites déjà de façon interactive dans l'Explorateur de Windows. Vous pouvez copier et déplacer des dossiers, lire des informations relatives aux dossiers et aux lecteurs, etc.
Lecture des informations relatives aux lecteurs
L'objet Drive vous permet d'obtenir des informations relatives aux différents lecteurs connectés à un système physiquement ou à travers le réseau. Ses propriétés vous apportent les informations suivantes :
Observez dans l'exemple de code la mise en �uvre de ces propriétés dans le FileSystemObject.
- La taille totale du lecteur en octets (TotalSize, propriété).
- L'espace disponible sur le lecteur en octets (AvailableSpace et FreeSpace, propriétés).
- La lettre affectée au lecteur (DriveLetter, propriété).
- Le type du lecteur, c'est-à-dire s'il est amovible, fixe, réseau, CD-ROM ou virtuel (DriveType, propriété).
- Le numéro de série du lecteur (SerialNumber, propriété).
- Le type de système de fichiers utilisé par le lecteur, comme FAT, FAT32, NTFS et autre (FileSystem, propriété).
- La disponibilité d'un lecteur (IsReady, propriété).
- Le nom du partage/ou du volume (ShareName et VolumeName, propriétés).
- Le chemin ou le dossier racine du lecteur (Path et RootFolder, propriétés).
Exemple d'utilisation de l'objet Drive
Utilisez l'objet Drive pour obtenir des informations sur un lecteur. Le code ci-dessous ne présente pas de référence à un objet Drive ; utilisez plutôt la méthode GetDrive pour obtenir une référence à un objet Drive existant (dans le cas présent drv).L'exemple ci-dessous illustre l'utilisation de l'objet Drive dans VBScript :
Le code suivant illustre la même fonctionnalité dans JScript :Sub ShowDriveInfo(drvPath) Dim fso, drv, s Set fso = CreateObject("Scripting.FileSystemObject") Set drv = fso.GetDrive(fso.GetDriveName(drvPath)) s = "Lecteur " & UCase(drvPath) & " - " s = s & drv.VolumeName & "<br>" s = s & "Espace total: " & FormatNumber(drv.TotalSize / 1024, 0) s = s & " Ko" & "<br>" s = s & "Espace disponible: " & FormatNumber(drv.FreeSpace / 1024, 0) s = s & " Ko" & "<br>" Response.Write s End Sub
function ShowDriveInfo1(drvPath) { var fso, drv, s =""; fso = new ActiveXObject("Scripting.FileSystemObject"); drv = fso.GetDrive(fso.GetDriveName(drvPath)); s += "Lecteur " + drvPath.toUpperCase()+ " - "; s += drv.VolumeName + "<br>"; s += "Espace total: " + drv.TotalSize / 1024; s += " Ko" + "<br>"; s += "Espace disponible: " + drv.FreeSpace / 1024; s += " Ko" + "<br>"; Response.Write(s); }
Utilisation des dossiers
Le tableau ci-dessous présente des opérations sur les dossiers courants et les méthodes correspondantes.
Tâche Méthode Créer un dossier. FileSystemObject.CreateFolder Supprimer un dossier. Folder.Delete ou FileSystemObject.DeleteFolder Déplacer un dossier. Folder.Move ou FileSystemObject.MoveFolder Copier un dossier. Folder.Copy ou FileSystemObject.CopyFolder Extraire le nom d'un dossier. Folder.Name Déterminer l'existence d'un dossier sur un lecteur. FileSystemObject.FolderExists Obtenir une instance d'un objet Folder existant. FileSystemObject.GetFolder Déterminer le nom du dossier parent d'un dossier. FileSystemObject.GetParentFolderName Déterminer le chemin des dossiers systèmes. FileSystemObject.GetSpecialFolder Observez dans l'exemple de code la mise en �uvre de ces méthodes et propriétés dans le FileSystemObject.
L'exemple ci-dessous illustre l'utilisation des objets Folder et FileSystemObject pour manipuler les dossiers et obtenir des informations les concernant dans VBScript :
Cet exemple illustre l'utilisation des objets Folder et FileSystemObject dans JScript :Sub ShowFolderInfo() Dim fso, fldr, s ' Obtient une instance du FileSystemObject. Set fso = CreateObject("Scripting.FileSystemObject") ' Obtient l'objet Drive. Set fldr = fso.GetFolder("c:") ' Affiche le nom du dossier parent. Response.Write "Le nom du dossier parent est: " & fldr & "<br>" ' Affiche le nom du lecteur. Response.Write "Résidant sur le lecteur " & fldr.Drive & "<br>" ' Affiche le nom de la racine. If fldr.IsRootFolder = True Then Response.Write "Ceci est le dossier racine." & ""<br>"<br>" Else Response.Write "Ce dossier n'est pas un dossier racine." & "<br><br>" End If ' Crée un nouveau dossier avec l'objet FileSystemObject. fso.CreateFolder ("C:\Bogus") Response.Write "Dossier C:\Bogus créé" & "<br>" ' Affiche le nom de base du dossier. Response.Write "Nom de base = " & fso.GetBaseName("c:\bogus") & "<br>" ' Supprime le dossier nouvellement créé. fso.DeleteFolder ("C:\Bogus") Response.Write "Dossier C:\Bogus supprimé" & "<br>" End Sub
function ShowFolderInfo() { var fso, fldr, s = ""; // Obtient une instance du FileSystemObject. fso = new ActiveXObject("Scripting.FileSystemObject"); // Obtient l'objet Drive. fldr = fso.GetFolder("c:"); // Affiche le nom du dossier parent. Response.Write("Le nom du dossier parent est: " + fldr + "<br>"); // Affiche le nom du lecteur. Response.Write("Résidant sur le lecteur " + fldr.Drive + "<br>"); // Affiche le nom de la racine. if (fldr.IsRootFolder) Response.Write("Ceci est le dossier racine."); else Response.Write("Ce dossier n'est pas un dossier racine."); Response.Write("<br><br>"); // Crée un nouveau dossier avec l'objet FileSystemObject. fso.CreateFolder ("C:\\Bogus"); Response.Write("Dossier C:\\Bogus créé" + "<br>"); // Affiche le nom de base du dossier. Response.Write("Nom de base = " + fso.GetBaseName("c:\\bogus") + "<br>"); // Supprime le dossier nouvellement créé. fso.DeleteFolder ("C:\\Bogus"); Response.Write("Dossier C:\\Bogus supprimé" + "<br>"); }