Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
772 of 1492 menu
◀ ▶

FileAttributes

FileAttributes помечено [Flags]. Читают через File.GetAttributes, меняют через File.SetAttributes. Проверяют отдельный флаг через HasFlag: Normal, ReadOnly, Hidden, Directory, Archive. Флаг Hidden не гарантирует скрытие в проводнике ОС.

Синтаксис

FileAttributes attrs = File.GetAttributes(path); bool readOnly = attrs.HasFlag(FileAttributes.ReadOnly);

Пример

Давайте поставим ReadOnly на abcde.txt:

using System; using System.IO; class Program { static void Main() { File.WriteAllText("abcde.txt", "abcde"); File.SetAttributes("abcde.txt", FileAttributes.ReadOnly); FileAttributes attrs = File.GetAttributes("abcde.txt"); Console.WriteLine(attrs.HasFlag(FileAttributes.ReadOnly)); File.SetAttributes("abcde.txt", FileAttributes.Normal); File.Delete("abcde.txt"); } }

Результат выполнения кода:

True

Пример

Давайте проверим Archive у нового файла:

using System; using System.IO; class Program { static void Main() { File.WriteAllText("abcde.txt", "12345"); FileAttributes attrs = File.GetAttributes("abcde.txt"); Console.WriteLine(attrs.HasFlag(FileAttributes.Archive)); File.Delete("abcde.txt"); } }

Результат выполнения кода:

True

Пример

Давайте увидеть Directory у папки abcde:

using System; using System.IO; class Program { static void Main() { Directory.CreateDirectory("abcde"); FileAttributes attrs = File.GetAttributes("abcde"); Console.WriteLine(attrs.HasFlag(FileAttributes.Directory)); Directory.Delete("abcde"); } }

Результат выполнения кода:

True

Смотрите также

  • SearchOption,
    глубина обхода каталогов
  • FileMode,
    открытие файла после проверки
  • EnumerateFiles,
    список файлов в каталоге
  • FileAccess,
    доступ при работе с потоком
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить