如何:在 Visual Basic 中确定目录的属性

更新:2007 年 11 月

My.Computer.FileSystem.GetDirectoryInfo 方法方法返回一个 DirectoryInfo 对象,可以通过查询该对象的 Attributes 属性来确定有关目录的信息。

下表列出了 Attributes 属性所使用的 FileAttributes 枚举的成员。

成员

数值

说明

ReadOnly

1

此文件是只读的。

Hidden

2

此文件是隐藏的,因此未包括在普通目录列表中。

System

4

此文件是系统文件。此文件是操作系统的一部分,或者由操作系统以独占方式使用。

Directory

16

此文件是一个目录。

Archive

32

此文件的存档状态。应用程序使用此属性将文件标记为备份或移除。

Device

64

未使用。

Normal

128

此文件是普通文件,未设置其他属性。仅当单独使用时,此属性才有效。

Temporary

256

此文件是临时文件。文件系统尝试将所有数据保存在内存中,以便可以更快访问。应删除不再需要的临时文件。

SparseFile

512

此文件是稀疏文件。稀疏文件通常是大文件,包含的数据大多数为 0。

ReparsePoint

1024

此文件包含一个重分析点,该点是与文件或目录关联的用户定义数据组成的块。

Compressed

2048

此文件是压缩文件。

Offline

4096

此文件处于脱机状态,此刻不能使用其数据。

NotContentIndexed

8192

将不会通过操作系统的内容索引服务来索引此文件。

Encrypted

16384

此文件或目录已加密。对于文件,这意味着文件中的所有数据均已加密。对于目录,这意味着默认情况下将加密新创建的文件和目录。

确定目录是否为隐藏的

  • 使用 GetDirectoryInfo 方法返回 DirectoryInfo 对象。此示例返回目录 TestDir 的 DirectoryInfo,从 DirectoryInfo 对象获取并检查 FileAttributes 对象,以确定该目录是否为隐藏的。您可以以类似方式测试其他属性。

    Dim checkFile As System.IO.DirectoryInfo
    checkFile = My.Computer.FileSystem.GetDirectoryInfo("C:\TestDir")
    Dim attributeReader As System.IO.FileAttributes
    attributeReader = checkFile.Attributes
    
    If (attributeReader And System.IO.FileAttributes.Hidden) > 0 Then
        MsgBox("Directory is hidden")
    End If
    

请参见

任务

如何:在 Visual Basic 中确定文件的属性

参考

My.Computer.FileSystem.GetDirectoryInfo 方法

DirectoryInfo

FileAttributes

其他资源

文件、目录和驱动器属性 (Visual Basic)