VB ファイル操作 |
Scripting.FileSystemObject オブジェクト FileSystemObjectオブジェクトはファイルシステムへアクセスする方法を提供する便利なオブジェクトです。 |
[参照設定] Microsoft Scripting Runtime (scrrun.dll) [変数宣言] Dim fs As New Scripting.FileSystemObject Dim f As File Dim fo As Folder Dim d As Drive |
【サンプルリスト】Private Sub Sample() Dim fs As New Scripting.FileSystemObject 'ファイルを移動する1 If (fs.FileExists("c:\work\test.txt")) Then 'コピー元ファイルあり fs.CopyFile "c:\work\test.txt", "c:\temp\" '上書きファイルコピー fs.DeleteFile "c:\work\test.txt", True 'コピー元ファイル削除 End If 'ファイルを移動する2 If (fs.FileExists("c:\work\test1.txt")) Then '移動元ファイルあり If (fs.FileExists("c:\temp\test1.txt")) Then '移動先ファイルあり fs.DeleteFile "c:\temp\test1.txt", True '移動先ファイル削除 End If fs.MoveFile "c:\work\test1.txt", "c:\temp\" 'ファイル移動 End If End Sub |
●CopyFile メソッド [MSDN] 【機能】ファイルを別の場所へコピーします。 【書式】fs.CopyFile コピー元 , コピー先 [,上書きモード]
【 例 】 fs.CopyFile "c:\work\test.txt" , "c:\temp\test.txt" fs.CopyFile "c:\work\test.txt" , "c:\temp\" fs.CopyFile "c:\work\*.txt" , "c:\temp\" fs.CopyFile "c:\work\*.txt" , "c:\temp" ※ コピー元のファイルが存在しなければ、エラーが発生します。 ※ 上書きしないの指定でコピー先に同名のファイルが存在した場合は、エラーが発生します。 ※ コピー先に同名の読取専用ファイルが存在した場合は、エラーが発生します。 |
●DeleteFile
メソッド [MSDN] 【機能】指定されたファイルを削除します。 【書式】fs.DeleteFile コピー元 , コピー先 [,削除モード]
【 例 】 fs.DeleteFile "c:\work\test.txt" , True fs.DeleteFile "c:\work\test*" , True fs.DeleteFile "c:\work\*" , True ※ 指定ファイルが存在しなければ、エラーが発生します。 ※ 読取専用ファイルは削除しないの指定で読取専用ファイルを削除しようとした場合は、エラーが発生します。 |
●FileExists
メソッド [MSDN] 【機能】ファイルが存在するかどうかを返します。 【書式】result = fs.FileExists ( ファイル名 ) 【戻り値】
【 例 】 result = fs.FileExists ( "test.txt" ) result = fs.FileExists ( "c:\work\test.txt" ) result = fs.FileExists ( "..\test.txt" ) ※ パスを指定しなければカレントフォルダを調べます。 |
●MoveFile メソッド [MSDN] 【機能】ファイルを別の場所へ移動します。 【書式】fs.MoveFile 移動元 , 移動先 【例】 fs.MoveFile "c:\work\test.txt" , "c:\temp\test.txt" fs.MoveFile "c:\work\test.txt" , "c:\temp\" fs.MoveFile "c:\work\*.txt" , "c:\temp\" fs.MoveFile "c:\work\*.txt" , "c:\temp" ※ 移動元のファイルが存在しなければ、エラーが発生します。 ※ 移動先に同名のファイルが存在した場合は、エラーが発生します。 |
●GetSpecialFolder
メソッド [MSDN] 【機能】指定した特殊フォルダ(Windows,System,Temp)を返します。 【書式】result = fs.GetSpecialFolder (特殊フォルダの種類)
result = fs.GetSpecialFolder(WindowsFolder) result = fs.GetSpecialFolder(SystemFolder) result = fs.GetSpecialFolder(TemporaryFolder) |
●GetTempName
メソッド [MSDN] 【機能】一時ファイル名をランダムに生成して返します。 【書式】result = fs.GetTempName 【例】 result = fs.GetTempName 【実行例】 rad20591.tmp rad63202.tmp radB1C61.tmp |
●Attributesプロパティ [MSDN]
|
●DateLastAccessedプロパティ [MSDN]
|
●DateLastModifiedプロパティ [MSDN]
|
●Driveプロパティ [MSDN]
|
●Nameプロパティ [MSDN]
|
●ParentFolderプロパティ [MSDN]
|
●Pathプロパティ [MSDN]
|
●ShortNameプロパティ [MSDN]
|
●ShortPathプロパティ [MSDN]
|
●Sizeプロパティ [MSDN]
|
●Typeプロパティ [MSDN]
|
●IsRootFolderプロパティ [MSDN]
|
●AvailableSpaceプロパティ [MSDN]
|
●DriveLetterプロパティ [MSDN]
※ 指定したドライブにドライブ名が関連付けられていなかった場合はヌルストリング("") が返ります。 |
●DriveTypeプロパティ [MSDN]
|
●FileSystemプロパティ [MSDN]
|
●FreeSpaceプロパティ [MSDN]
※ FreeSpaceプロパティは AvailableSpaceプロパティと同じ値を返します。これらの 2つの値が異なる可能性があるのは、ディスククォータ機能をサポートしている場合です。 |
●IsReadyプロパティ [MSDN]
|
●RootFolderプロパティ [MSDN]
|
●SerialNumberプロパティ [MSDN]
※ SerialNumber プロパティを使用して、リムーバブルメディアのドライブに正しいディスクが挿入されたことを確認できます。 |
●ShareNameプロパティ [MSDN]
※ ネットワークドライブでないドライブを指定すると、ヌルストリング("") が返されます。 |
●TotalSizeプロパティ [MSDN]
|
●VolumeNameプロパティ [MSDN]
|