Vbscript-fso-objects

提供:Dev Guides
移動先:案内検索

VBScript FileSystemオブジェクト

名前が示すように、FSOオブジェクトは、開発者がドライブ、フォルダー、およびファイルを操作するのに役立ちます。 このセクションでは、議論します-

オブジェクトとコレクション

Sr.No. Object Type & Description
1

Drive

ドライブはオブジェクトです。 システムに接続されているドライブに関する情報を収集できるメソッドとプロパティが含まれています

2

Drives

ドライブはコレクションです。 システムに接続されているドライブのリストを物理的または論理的に提供します。

3

File

ファイルはオブジェクトです。 開発者がファイルを作成、削除、または移動できるようにするメソッドとプロパティが含まれています。

4

Files

ファイルはコレクションです。 フォルダー内に含まれるすべてのファイルのリストを提供します。

5

Folder

フォルダーはオブジェクトです。 開発者がフォルダを作成、削除、または移動できるようにするメソッドとプロパティを提供します。

6

Folders

フォルダはコレクションです。 フォルダ内のすべてのフォルダのリストを提供します。

7

TextStream

TextStreamはオブジェクトです。 開発者はテキストファイルを読み書きできます。

ドライブ

  • ドライブ*は、特定のディスクドライブまたはネットワーク共有のプロパティへのアクセスを提供するオブジェクトです。 次のプロパティは、*ドライブ*オブジェクトでサポートされています-
  • 空きスペース
  • ドライブレター
  • ドライブタイプ
  • ファイルシステム
  • フリースペース
  • IsReady
  • Path
  • ルートフォルダ
  • シリアルナンバー
  • ShareName
  • 全体の大きさ
  • VolumeName

<!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>

上記のスクリプトをHTMLとして保存し、IEで実行すると、コンソールに次の出力が表示されます。

Drive - Win 7 Free Space:20,154,059 Kbytes

ドライブ

  • ドライブ*は、システムに接続されているすべてのドライブの詳細を物理的または論理的に提供するコレクションです。 それは2つの特性を運びます-
  • カウントプロパティ
  • アイテムのプロパティ

<!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>

上記のスクリプトをHTMLとして保存し、IEで実行すると、コンソールに次の出力が表示されます。

C- Win 7::D-Personal ::E-Common::F-Songs::
4

File

*File* は、開発者がファイルを作成、削除、または移動できるようにするプロパティとメソッドの両方を含むオブジェクトです。

方法

  • Copy
  • 削除する
  • Move
  • openasTextStream

プロパティ

  • 属性
  • 作成日
  • DateLastAccessed
  • DateLastModified
  • ドライブ
  • Name
  • ParentFolder
  • Path
  • ショートネーム
  • ショートパス
  • Size
  • Type

<!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>

上記のスクリプトをHTMLとして保存し、IEで実行すると、コンソールに次の出力が表示されます。

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

ファイル

*Files* はコレクションであり、フォルダー内に含まれるすべてのファイルのリストを提供します。

プロパティ

  • カウント
  • Item

<!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>

上記のスクリプトをHTMLとして保存し、IEで実行すると、コンソールに次の出力が表示されます。

D:\PROJECT\sendmail.vbs
6

フォルダ

*Folder* は、開発者がフォルダーを作成、削除、または移動できるようにするプロパティとメソッドの両方を含むオブジェクトです。

方法

  • Copy
  • 削除する
  • Move
  • CreateTextFile

プロパティ

  • 属性
  • 作成日
  • DateLastAccessed
  • DateLastModified
  • ドライブ
  • ファイル
  • IsRootFolder
  • Name
  • ParentFolder
  • Path
  • ショートネーム
  • ショートパス
  • Size
  • サブフォルダー
  • Type

<!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>

上記のスクリプトをHTMLとして保存し、IEで実行すると、コンソールに次の出力が表示されます。

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

フォルダ

*Folders* は、Folderオブジェクト内のすべてのFolderオブジェクトのコレクションです。

方法

  • Add

プロパティ

  • カウント
  • Item

上記のスクリプトをHTMLとして保存してIEで実行すると、「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

*TextStream* オブジェクトは、開発者がテキストファイルをシームレスに操作するのに役立ちます。 開発者は、テキストストリームオブジェクトを使用して、テキストファイルの内容を読み取り、書き込み、または追加できます。

構文

TextStream.{property  | method( )}

上記のスクリプトをHTMLとして保存してIEで実行すると、「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>

上記のスクリプトをHTMLとして保存し、IEで実行すると、D:\ Driveにテキストファイルが作成され、WriteLineメソッドで指定された文字列が追加されます。

Welcome to VBScript Programming