ファイルシステムオブジェクトについて
◆概要
このページは、Visual Basic 6.0のファイルシステムオブジェクトについて記載しています。
VB6.0では、ドライブやフォルダ、ファオルを操作するときにファイルシステムオブジェクトを使うことが推奨されています。但し、ファイルについては、シーケンシャルテキストファイルしかサポートされていません。ランダムファイルやバイナリファイルを操作するためには、従来からあるOpenステートメントを使う必要があります。
ファイルシステムオブジェクトについては、以下のMSDNライブラリに詳しく説明があります。
[VIsual Basicドキュメント]-[Visual Basicの使用方法]-[プログラミングガイド]-[Visual Basicでできること]の中の[ドライブ、フォルダ、ファイルの処理]
◆ファイルシステムオブジェクトの使い方
VBからファイルシステムオブジェクトを使う時は、[プロジェクト]メニューの[参照設定]ダイアログボックスで、[Microsoft Scripting Runtime]を選択します。
なお、ファイルシステムオブジェクトは、Scriptingタイプライブラリに含まれており、このタイプライブラリはScrrun.dllというファイルに含まれています。
また、オブジェクトブラウザからも、フィルシステムオブジェクトのコレクション、プロパティ、メソッド、イベント、定数などを表示できます。
◆ドライブの操作
ファイルシステムオブジェクトでドライブの容量やドライブの種類を取得するには、DriveオブジェクトのTotalSizeプロパティ、FreeSpaceプロパティ、DriveTypeプロパティを使います。
操作 | オブジェクト | メソッド、プロパティ | 説明 | 同等の機能を提供をするWin32 APIの関数、VBの関数 |
フォルダの作成 | FileSystemObject オブジェクト |
CreateFolder メソッド |
フォルダを作成する |
CreateDirectory() 関数 CreateDirectoryEx() 関数 |
フォルダの削除 | FileSystemObject オブジェクト |
DeleteFolder メソッド |
指定したフォルダおよびそのフォルダ内のフォルダとワイルを削除する | RemoveDirectry() 関数 DeleteFile() 関数 SHFileOperation() 関数 |
Folder オブジェクト |
Deleteメソッド |
指定されたファイルまたはフォルダを削除する | ||
フォルダの移動 | FileSystemObject オブジェクト |
MoveFolder メソッド |
フォルダを別の場所へ移動する | MoveFile() 関数 SHFileOperation() 関数 |
Folder オブジェクト |
Moveメソッド |
指定されたファイルまたはフォルダを別の場所へ移動する | ||
フォルダのコピー |
FileSystemObject オブジェクト |
CopyFolder メソッド |
ファイルを別の場所にコピーする | CopyFile() 関数 SHFileOperation() 関数 |
Folder オブジェクト |
Copyメソッド |
指定されたファイルまたはフォルダを別の場所にコピーする | ||
フォルダ名の取得 | Folder オブジェクト |
Nameプロパティ |
指定されたファイル又はフォルダの名前を取得する | Dir()関数 |
フォルダの確認 | FileSystemObject オブジェクト |
FolderExists メソッド |
指定したフォルダが存在するかどうか判定する | Dir()関数 |
親フォルダの取得 | FileSystemObject オブジェクト |
GetParentFolderName メソッド |
指定されたパスの構成要素に親フォルダが存在するときは、、親フォルダの名前を取得する | Dir()関数 |
システムフォルダの取得 | FileSystemObject オブジェクト |
GetSpecialFolder プロパティ |
Windowsフォルダや一時ファイルフォルダの格納に使われるフォルダなどの特別なフォルダを取得する | GetDirectoryFolder() 関数 GetSystemDirectory() 関数 GetTempPath() 関数 |
(注)win 32 APIの関数 VBの関数
なお、APIでドライブの容量やドライブの種類を取得するには、Win32 APIのGetDiskFreeSpace()関数やGetDriveType()関数を使います。