項目
ファイルの情報を取得する(FileSystemObject)
概要
FileSystemObjectを使用してファイルの情報を取得します。
例
Option Compare Database
Option Explicit
'--------------------------------------------------------
' 定数宣言領域
'--------------------------------------------------------
'FILE_ATTR
Private Const FILE_ATTR_NORMAL = 0
Private Const FILE_ATTR_READONLY = 1
Private Const FILE_ATTR_HIDDEN = 2
Private Const FILE_ATTR_SYSTEM = 4
Private Const FILE_ATTR_VOLUME = 8
Private Const FILE_ATTR_DIRECTORY = 16
Private Const FILE_ATTR_ARCHIVE = 32
Private Const FILE_ATTR_ALIAS = 64
Private Const FILE_ATTR_COMPRESSED = 128
'--------------------------------------------------------
' 名称 : getFileInfo
'
' 機能 : ファイルの情報を取得する(FileSystemObject)
'
' 参照設定: Microsoft Scripting Runtime
'
'--------------------------------------------------------
Sub getFileInfo()
Dim fso As New FileSystemObject
Dim filePath As String
Dim f As File
filePath = "d:\temp\test.txt"
On Error GoTo err_handle
'インスタンスを取得
Set f = fso.GetFile(filePath)
With f
Debug.Print "【"; f; "の情報】"
Debug.Print
Debug.Print "ファイル名 : "; .Name
Debug.Print "属性 : "; getAttribute(.Attributes)
Debug.Print "作成日 : "; .DateCreated
Debug.Print "最終アクセス日 : "; .DateLastAccessed
Debug.Print "更新日 : "; .DateLastModified
Debug.Print "親 : "; .ParentFolder
Debug.Print "パス : "; .Path
Debug.Print "ショートネーム : "; .ShortName
Debug.Print "ショートパス : "; .ShortPath
Debug.Print "サイズ : "; .Size
Debug.Print "タイプ : "; .Type
Debug.Print
End With
exit_handle:
Set fso = Nothing
Set f = Nothing
Exit Sub
err_handle:
Debug.Print Err.Description
Resume exit_handle
End Sub
'--------------------------------------------------------
' getAttribute : 対応する属性を返す
'--------------------------------------------------------
Function getAttribute(attr)
Select Case attr
Case FILE_ATTR_NORMAL: getAttribute = "NORMAL"
Case FILE_ATTR_READONLY: getAttribute = "READONLY"
Case FILE_ATTR_HIDDEN: getAttribute = "HIDDEN"
Case FILE_ATTR_SYSTEM: getAttribute = "SYSTEM"
Case FILE_ATTR_VOLUME: getAttribute = "VOLUME"
Case FILE_ATTR_DIRECTORY: getAttribute = "DIRECTORY"
Case FILE_ATTR_ARCHIVE: getAttribute = "ARCHIVE"
Case FILE_ATTR_ALIAS: getAttribute = "ALIAS"
Case FILE_ATTR_COMPRESSED: getAttribute = "COMPRESSED"
End Select
End Function