Bagikan melalui


FileSystemInfo.Attributes Properti

Definisi

Mendapatkan atau mengatur atribut untuk file atau direktori saat ini.

public:
 property System::IO::FileAttributes Attributes { System::IO::FileAttributes get(); void set(System::IO::FileAttributes value); };
public System.IO.FileAttributes Attributes { get; set; }
member this.Attributes : System.IO.FileAttributes with get, set
Public Property Attributes As FileAttributes

Nilai Properti

FileAttributes dari saat ini FileSystemInfo.

Pengecualian

File yang ditentukan tidak ada. Hanya dilemparkan saat mengatur nilai properti.

Jalur yang ditentukan tidak valid. Misalnya, ada di drive yang tidak dipetakan. Hanya dilemparkan saat mengatur nilai properti.

Pemanggil tidak memiliki izin yang diperlukan.

Hanya .NET Core dan .NET 5+: Pengguna mencoba mengatur nilai atribut tetapi tidak memiliki izin tulis.

Jalur yang ditentukan, nama file, atau keduanya melebihi panjang maksimum yang ditentukan sistem.

Pemanggil mencoba mengatur atribut file yang tidak valid.

-atau-

.NET Framework saja: Pengguna mencoba menetapkan nilai atribut tetapi tidak memiliki izin tulis.

Refresh() tidak dapat menginisialisasi data.

Contoh

Contoh berikut menunjukkan Attributes properti . Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk FileSystemInfo kelas .

static void DisplayFileSystemInfoAttributes(FileSystemInfo^ fsi)
{
    //  Assume that this entry is a file.
    String^ entryType = "File";

    // Determine if entry is really a directory
    if ((fsi->Attributes & FileAttributes::Directory) == FileAttributes::Directory)
    {
        entryType = "Directory";
    }
    //  Show this entry's type, name, and creation date.
    Console::WriteLine("{0} entry {1} was created on {2:D}", entryType, fsi->FullName, fsi->CreationTime);
}
static void DisplayFileSystemInfoAttributes(FileSystemInfo fsi)
{
    //  Assume that this entry is a file.
    string entryType = "File";

    // Determine if entry is really a directory
    if ((fsi.Attributes & FileAttributes.Directory) == FileAttributes.Directory )
    {
        entryType = "Directory";
    }
    //  Show this entry's type, name, and creation date.
    Console.WriteLine("{0} entry {1} was created on {2:D}", entryType, fsi.FullName, fsi.CreationTime);
}
Sub DisplayFileSystemInfoAttributes(ByVal fsi As IO.FileSystemInfo)
    ' Assume that this entry is a file.
    Dim entryType As String = "File"

    ' Determine if this entry is really a directory.
    If (fsi.Attributes And FileAttributes.Directory) = FileAttributes.Directory Then
        entryType = "Directory"
    End If

    ' Show this entry's type, name, and creation date.
    Console.WriteLine("{0} entry {1} was created on {2:D}", _
        entryType, fsi.FullName, fsi.CreationTime)
End Sub

Keterangan

Nilai Attributes properti telah di-cache sebelumnya jika instans FileSystemInfo objek saat ini dikembalikan dari salah satu metode berikut DirectoryInfo :

Nilai dapat di-cache ketika nilai itu sendiri atau properti lain FileSystemInfo diakses. Untuk mendapatkan nilai terbaru, panggil Refresh metode .

Jika jalur tidak ada pada status cache terakhir, nilai yang dikembalikan adalah (FileAttributes)(-1). FileNotFoundException atau DirectoryNotFoundException hanya dapat dilemparkan saat mengatur nilai.

Nilai properti ini adalah kombinasi dari bendera arsip, terkompresi, direktori, tersembunyi, offline, baca-saja, sistem, dan atribut file sementara.

Saat Anda mengatur nilai ini, gunakan operator OR bitwise (| di C# atau Or di Visual Basic) untuk menerapkan lebih dari satu nilai. Untuk mempertahankan nilai yang ada dalam Attributes properti, sertakan nilai Attributes properti dalam penugasan Anda. Contohnya:

exampleFile.Attributes = exampleFile.Attributes | FileAttributes.ReadOnly;

Berlaku untuk

Lihat juga