Oggetti FileSystem VBScript
Come suggerisce il nome, gli oggetti FSO aiutano gli sviluppatori a lavorare con unità, cartelle e file. In questa sezione, discuteremo:
Oggetti e collezioni
Sr.No. | Tipo di oggetto e descrizione |
---|---|
1 | Drive Drive è un oggetto. Contiene metodi e proprietà che consentono di raccogliere informazioni su un'unità collegata al sistema |
2 | Drives Drives è una collezione. Fornisce un elenco delle unità collegate al sistema, fisicamente o logicamente. |
3 | File Il file è un oggetto. Contiene metodi e proprietà che consentono agli sviluppatori di creare, eliminare o spostare un file. |
4 | Files File è una raccolta. Fornisce un elenco di tutti i file contenuti in una cartella. |
5 | Folder La cartella è un oggetto. Fornisce metodi e proprietà che consentono agli sviluppatori di creare, eliminare o spostare cartelle. |
6 | Folders Folders è una raccolta. Fornisce un elenco di tutte le cartelle all'interno di una cartella. |
7 | TextStream TextStream è un oggetto. Consente agli sviluppatori di leggere e scrivere file di testo. |
Guidare
Driveè un oggetto che fornisce l'accesso alle proprietà di una particolare unità disco o condivisione di rete. Le seguenti proprietà sono supportate daDrive oggetto -
- AvailableSpace
- DriveLetter
- DriveType
- FileSystem
- FreeSpace
- IsReady
- Path
- RootFolder
- SerialNumber
- ShareName
- TotalSize
- VolumeName
Esempio
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim oFS, drive, space
Set oFS = CreateObject("Scripting.FileSystemObject")
Set drive = oFS.GetDrive(oFS.GetDriveName("C:\"))
space = "Drive " & UCase(drvPath) & " - "
space = space & drive.VolumeName & " "
space = space & "Free Space: " & FormatNumber(drive.FreeSpace/1024, 0)
space = space & " Kbytes"
Document.write space
</script>
</body>
</html>
Se lo script precedente viene salvato come HTML ed eseguito in IE, otterremo il seguente output nella console.
Drive - Win 7 Free Space:20,154,059 Kbytes
Azionamenti
Drivesè una raccolta che fornisce i dettagli di tutte le unità collegate al sistema, fisicamente o logicamente. Ha due proprietà:
- Count Property
- Proprietà dell'oggetto
Esempio
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim oFS, d, dc, s, n
Set oFS = CreateObject("Scripting.FileSystemObject")
Set dc = oFS.Drives
For Each d in dc
n = ""
s = s & d.DriveLetter & " - "
If d.DriveType = 3 Then
n = d.ShareName
ElseIf d.IsReady Then
n = d.VolumeName
Else
n = "Drive not available"
End If
s = s & n & "::"
Next
document.write s
document.write dc.count
</script>
</body>
</html>
Se lo script precedente viene salvato come HTML ed eseguito in IE, otterremo il seguente output nella console.
C- Win 7::D-Personal ::E-Common::F-Songs::
4
File
File è un oggetto, che contiene sia proprietà che metodi che consentono agli sviluppatori di creare, eliminare o spostare un file.
Metodi
- Copy
- Delete
- Move
- openasTextStream
Proprietà
- Attributes
- DateCreated
- DateLastAccessed
- DateLastModified
- Drive
- Name
- ParentFolder
- Path
- ShortName
- ShortPath
- Size
- Type
Esempio
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFile("C:\user.js")
document.write "Line 1: "& f.DateCreated & "<br />"
document.write "Line 2: "& f.Attributes & "<br />"
document.write "Line 3: "& f.DateLastAccessed & "<br />"
document.write "Line 4: "& f.DateLastModified & "<br />"
document.write "Line 5: "& f.Drive & "<br />"
document.write "Line 6: "& f.Name & "<br />"
document.write "Line 7: "& f.ParentFolder & "<br />"
document.write "Line 8: "& f.Path & "<br />"
document.write "Line 9: "& f.ShortName & "<br />"
document.write "Line 10: "& f.ShortPath & "<br />"
document.write "Line 11: "& f.Size & "<br />"
document.write "Line 12: "& f.Type & "<br />"
f.copy ("D:\") & "<br />" 'copying to file to another location'
f.Move ("E:\") & "<br />" 'Move the file to another location'
f.Delete ("D:\") & "<br />" 'Delete to file from one location'
</script>
</body>
</html>
Se lo script precedente viene salvato come HTML ed eseguito in IE, otterremo il seguente output nella console.
Line 1: 08/02/13 06:57:34
Line 2: 32
Line 3: 08/02/13 06:57:34
Line 4: 04/18/12 22:23:37
Line 5: C:
Line 6: user.js
Line 7: C:\
Line 8: C:\user.js
Line 9: user.js
Line 10: C:\user.js
Line 11: 474
Line 12: JScript Script File
File
Files è una raccolta che fornisce un elenco di tutti i file contenuti in una cartella.
Proprietà
- Count
- Item
Esempio
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim fso, f, f1, fc, s
Set oFS = CreateObject("Scripting.FileSystemObject")
'get the folder by giving its path
Set f = oFS.GetFolder("D:\PROJECT\")
Set fc = f.Files
'Get Item
Set s = fc.Item("sendmail.vbs")
'Get Count
x = fc.Count
Document.write s
Document.write x
</script>
</body>
</html>
Se lo script precedente viene salvato come HTML ed eseguito in IE, otterremo il seguente output nella console.
D:\PROJECT\sendmail.vbs
6
Cartella
Folder è un oggetto, che contiene sia proprietà che metodi che consentono agli sviluppatori di creare, eliminare o spostare una cartella.
Metodi
- Copy
- Delete
- Move
- CreateTextFile
Proprietà
- Attributes
- DateCreated
- DateLastAccessed
- DateLastModified
- Drive
- Files
- IsRootFolder
- Name
- ParentFolder
- Path
- ShortName
- ShortPath
- Size
- SubFolders
- Type
Esempio
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
' Enter a Folder Name that exists on your System'
Set f = fso.GetFolder("D:\PROJECT\")
ShowFileInfo = "Created: " & f.DateCreated & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "attributes " & f.attributes & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "Last Accessed : " & f.DateLastAccessed & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "DateLastModified : " & f.DateLastModified & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "Drive : " & f.Drive & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "count : " & f.Files.count & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "IsRoot folder : " &f.IsRootFolder & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "Name : " & f.Name & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "parent folder : " & f.ParentFolder & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "Path : " & f.Path & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "shortname : " & f.ShortName & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "ShortPath : " & f.ShortPath & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "File Size : " & f.Size & "<br / >"
document.write ShowFileInfo
ShowFileInfo = "Type : " & f.Type & "<br / >"
document.write ShowFileInfo
</script>
</body>
</html>
Se lo script precedente viene salvato come HTML ed eseguito in IE, otterremo il seguente output nella console.
Created: 22/02/2012 8:24:57 PM
attributes 16
Last Accessed : 1/08/2013 12:48:36 PM
DateLastModified : 1/08/2013 12:48:36 PM
Drive : D:
count : 6
IsRoot folder : False
Name : PROJECT
parent folder : D:\
Path : D:\PROJECT
shortname : PROJECT
ShortPath : D:\PROJECT
File Size : 8655239975
Type : File folder
Cartelle
Folders è una raccolta di tutti gli oggetti cartella all'interno di un oggetto cartella.
Metodi
- Add
Proprietà
- Count
- Item
Esempio
Se lo script precedente viene salvato come HTML ed eseguito in IE, creeremo una cartella con il nome "Test_Folder".
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim fso, f, fc, nf
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder("D:\PROJECT")
Set fc = f.SubFolders
folderName = "Test_Folder"
If folderName <> "" Then
Set nf = fc.Add(folderName)
Else
Set nf = fc.Add("New Folder")
End If
</script>
</body>
</html>
TextStream
TextStreamobject aiuta gli sviluppatori a lavorare senza problemi con i file di testo. Gli sviluppatori possono leggere, scrivere o aggiungere il contenuto al file di testo utilizzando l'oggetto flusso di testo.
Sintassi
TextStream.{property | method( )}
Esempio
Se lo script precedente viene salvato come HTML ed eseguito in IE, creeremo una cartella con il nome "Test_Folder".
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim objFSO
Set objFSO = CreateObject("Scripting.FileSystemObject")
Dim objTextFile
Set objTextFile = objFSO.CreateTextFile("D:\Testfile.txt")
objTextFile.Close
Const ForAppending = 8
Set objTextFile = objFSO.OpenTextFile("D:\Testfile.txt",ForAppending,True)
objTextFile.WriteLine "Welcome to VBScript Programming"
objTextFile.Close
Set objTextFile = Nothing
Set objFSO = Nothing
</script>
</body>
</html>
Se lo script precedente viene salvato come HTML ed eseguito in IE, creerà un file di testo in D: \ Drive e aggiungerà la stringa specificata nel metodo WriteLine.
Welcome to VBScript Programming