FileAttributes Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje atributy pro soubory a adresáře.
Tento výčet podporuje bitové kombinace hodnot jeho členů.
public enum class FileAttributes
[System.Flags]
public enum FileAttributes
[System.Flags]
[System.Serializable]
public enum FileAttributes
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum FileAttributes
[<System.Flags>]
type FileAttributes =
[<System.Flags>]
[<System.Serializable>]
type FileAttributes =
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileAttributes =
Public Enum FileAttributes
- Dědičnost
- Atributy
Pole
Archive | 32 | Tento soubor je označen jako zahrnutý do operace přírůstkového zálohování. Systém Windows nastaví tento atribut při každé změně souboru a zálohovací software by ho měl vymazat při zpracování souboru během přírůstkového zálohování. |
Compressed | 2048 | Soubor se zkomprimuje. |
Device | 64 | Vyhrazeno pro budoucí použití. |
Directory | 16 | Soubor je adresář. |
Encrypted | 16384 | Soubor nebo adresář je zašifrovaný. U souboru to znamená, že všechna data v souboru jsou zašifrovaná. U adresáře to znamená, že šifrování je výchozí pro nově vytvořené soubory a adresáře. |
2 | Soubor je skrytý, a proto není součástí běžného výpisu adresáře. |
|
IntegrityStream | 32768 | Soubor nebo adresář zahrnuje podporu integrity dat. Když se tato hodnota použije na soubor, všechny datové proudy v souboru mají podporu integrity. Když se tato hodnota použije na adresář, všechny nové soubory a podadresáře v tomto adresáři ve výchozím nastavení obsahují podporu integrity. |
None | 0 | |
Normal | 128 | Soubor je standardní soubor, který nemá žádné speciální atributy. Tento atribut je platný pouze v případě, že je použit samostatně. |
NoScrubData | 131072 | Soubor nebo adresář jsou vyloučeny z kontroly integrity dat. Pokud je tato hodnota použita na adresář, jsou ve výchozím nastavení všechny nové soubory a podadresáře v tomto adresáři vyloučeny z integrity dat. |
NotContentIndexed | 8192 | Soubor nebude indexován službou indexování obsahu operačního systému. |
Offline | 4096 | Soubor je offline. Data souboru nejsou okamžitě k dispozici. |
ReadOnly | 1 | Soubor je jen pro čtení. |
ReparsePoint | 1024 | Soubor obsahuje spojovací bod, což je blok dat definovaných uživatelem přidružený k souboru nebo adresáři. |
SparseFile | 512 | Soubor je zhuštěný. Zhuštěné soubory jsou obvykle velké soubory, jejichž data se skládají většinou z nul. |
System | 4 | Jedná se o systémový soubor. To znamená, že soubor je součástí operačního systému nebo je používán výhradně operačním systémem. |
Temporary | 256 | Soubor je dočasný. Dočasný soubor obsahuje data, která jsou potřebná při provádění aplikace, ale po dokončení aplikace nejsou potřeba. Systémy souborů se snaží uchovávat všechna data v paměti pro rychlejší přístup, místo aby je vyprázdnily zpět do velkokapacitní paměti. Aplikace by měla dočasný soubor odstranit, jakmile už ho nepotřebujete. |
Příklady
Následující příklad ukazuje, jak načíst atributy souboru a zkontrolovat, jestli je soubor jen pro čtení.
using System;
using System.IO;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
FileAttributes attributes = File.GetAttributes("c:/Temp/testfile.txt");
if ((attributes & FileAttributes.ReadOnly) == FileAttributes.ReadOnly)
{
Console.WriteLine("read-only file");
}
else
{
Console.WriteLine("not read-only file");
}
}
}
}
open System.IO
let attributes = File.GetAttributes "c:/Temp/testfile.txt"
if attributes &&& FileAttributes.ReadOnly = FileAttributes.ReadOnly then
printfn "read-only file"
else
printfn "not read-only file"
Imports System.IO
Imports System.Text
Module Module1
Sub Main()
Dim attributes = File.GetAttributes("c:/Temp/testfile.txt")
If ((attributes And FileAttributes.ReadOnly) = FileAttributes.ReadOnly) Then
Console.WriteLine("read-only file")
Else
Console.WriteLine("not read-only file")
End If
End Sub
End Module
Poznámky
Atributy pro soubory a adresáře můžete získat voláním File.GetAttributes metody a můžete je nastavit voláním File.SetAttributes metody .
Pomocí metody není možné změnit stav File komprese objektu File.SetAttributes . Místo toho musíte soubor zkomprimovat buď pomocí nástroje pro kompresi, nebo jedné z tříd v System.IO.Compression oboru názvů .
.NET Core v Linuxu a macOS nepodporuje následující atributy:
- FileAttributes.Archive
- FileAttributes.Compressed
- FileAttributes.Device
- FileAttributes.Encrypted
- FileAttributes.IntegrityStream
- FileAttributes.NoScrubData
- FileAttributes.NotContentIndexed
- FileAttributes.Offline
- FileAttributes.SparseFile
- FileAttributes.System
- FileAttributes.Temporary
V unixových systémech hodnota vrácená funkcí File.GetAttributes zahrnuje Hidden
pro soubor, jehož název začíná tečkou ("."). V systému macOS můžete získat nebo nastavit příznak skrytý.