FileAttributes Перечисление
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет атрибуты для файлов и каталогов.
Это перечисление поддерживает побитовую комбинацию значений его членов.
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
- Наследование
- Атрибуты
Поля
Archive | 32 | Этот файл помечается для включения в операцию добавочного резервного копирования. Windows устанавливает этот атрибут при каждом изменении файла, и программному обеспечению резервного копирования нужно снимать его при обработке файла в рамках добавочного резервного копирования. |
Compressed | 2048 | Файл сжат. |
Device | 64 | Зарезервировано для будущего использования. |
Directory | 16 | Файл является каталогом. |
Encrypted | 16384 | Файл или каталог зашифрован. Для файла это означает, что все данные в файле зашифрованы. Для каталога это означает, что шифрование производится по умолчанию для вновь создаваемых файлов и каталогов. |
2 | Файл скрытый и, таким образом, не включается в обычный список каталога. |
|
IntegrityStream | 32768 | Файл или каталог включает поддержку целостности данных. Когда это значение применяется к файлу, все потоки данных в этом файле имеют поддержку целостности. Когда это значение применяется к каталогу, все новые файлы и подкаталоги этого каталога по умолчанию включают поддержку целостности. |
None | 0 | |
Normal | 128 | Файл является стандартным файлом без специальных атрибутов. Этот атрибут действителен, только если он используется отдельно. |
NoScrubData | 131072 | Файл или каталог исключен из проверки целостности данных. Когда это значение применяется к каталогу, по умолчанию для всех новых файлов и подкаталогов этого каталога поддержка целостности исключается. |
NotContentIndexed | 8192 | Файл не будет индексироваться службой индексирования содержимого операционной системы. |
Offline | 4096 | Файл находится в автономном режиме. Данные этого файла недоступны непосредственно. |
ReadOnly | 1 | Файл доступен только для чтения. |
ReparsePoint | 1024 | Файл содержит точку повторной обработки, блокирующую определяемые пользователем данные, связанные с файлом или каталогом. |
SparseFile | 512 | Файл является разреженным. Разреженными файлами обычно являются большие файлы, в которых содержатся в основном нулевые данные. |
System | 4 | Файл является системным. То есть файл является частью операционной системы или используется исключительно операционной системой. |
Temporary | 256 | Файл является временным. Временный файл содержит данные, необходимые во время выполнения приложения, но не требуемые после завершения приложения. Файловые системы для ускорения доступа стремятся держать все данные в памяти, а не сбрасывать их обратно на запоминающее устройство. Приложение должно стереть временный файл сразу после того, как он перестанет быть нужным. |
Примеры
В следующем примере показано, как получить атрибуты для файла и проверка, если файл доступен только для чтения.
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
Комментарии
Вы можете получить атрибуты для файлов и каталогов, вызвав File.GetAttributes метод , и задать их, вызвав File.SetAttributes метод .
Изменить состояние File сжатия объекта с помощью File.SetAttributes метода невозможно. Вместо этого необходимо фактически сжать файл с помощью средства сжатия или одного из классов в System.IO.Compression пространстве имен.
Следующие атрибуты не поддерживаются .NET Core в Linux и macOS:
- FileAttributes.Archive
- FileAttributes.Compressed
- FileAttributes.Device
- FileAttributes.Encrypted
- FileAttributes.IntegrityStream
- FileAttributes.NoScrubData
- FileAttributes.NotContentIndexed
- FileAttributes.Offline
- FileAttributes.SparseFile
- FileAttributes.System
- FileAttributes.Temporary
В системах Unix значение, возвращаемое параметром File.GetAttributes , включает Hidden
для файла, имя которого начинается с точки ("."). В macOS можно получить или установить скрытый флаг.