progs.biz  
Начало > C# > Основы > Урок 55
C#
VB.NET
Visual C++.NET
ASP.NET
Visual C++ 6
WinAPI
C/C++
Delphi
C++ Builder
Java
PHP
DirectX
Visual Basic 6.0
Ассемблер
Интернет
Сист. прогр-ние
Pocket PC
Обзор книг
Обзор программ

Алексей Дубовцев Microsoft .NET. Наиболее полное руководство.
Алексей Дубовцев Microsoft .NET. Наиболее полное руководство.
Заказать на Озоне



Яндекс-цитирования

Основы C#
Урок 55. Перечисление FileAttributes

С помощью перечисления FileAttributes задаются атрибуты для файлов и папок. Вот наиболее важные значения этого перечисления:

Directory - определяет, не есть ли объект папка.

Hidden - определяет, не является ли объект (папка или файл) скрытым.

ReadOnly - определяет, не имеет ли файл атрибут "только для чтения".

Normal - определяет, что для файла не установлены любые другие атрибуты. Данный элемент перечисления не может комбинироваться с другими элементами этого же перечисления.

System - определяет, не являетя ли файл системным.

Archive - определяет, не является ли файл архивным.

Compressed - определяет, не является ли файл сжатым файлом.

А вот использование этого перечисления:

        // Создание объекта DirectoryInfo.
        DirectoryInfo di = new DirectoryInfo("c:\\tmp\\tmp2");

        // Присваиваем атрибут "Только для чтения".
        di.Attributes |= FileAttributes.Hidden;
        // Получаем атриубты файла.
        FileAttributes fi = di.Attributes;

        // Выясняем, есть ли у папки атрибут Hidden.
        if((fi & FileAttributes.Hidden) == FileAttributes.Hidden)
        {
            Console.WriteLine("Hidden");
        }

        // Выясняем, есть ли у папки атрибут ReadOnly.
        if((fi & FileAttributes.ReadOnly) == FileAttributes.ReadOnly)
        {
            Console.WriteLine("ReadOnly");
        }

Обратите внимание на то, как мы определяем присутствие некоторого атрибута:

...
if((fi & FileAttributes.Hidden) == FileAttributes.Hidden)...

Если мы напишем просто

...
if(fi == FileAttributes.Hidden) // Логический ошибка!
...

то наш фрагмент выдаст правильный результат только тогда, когда атрибут Hidden будет у нашей папки единственным. А так как обычно атрибутов несколько, то надо использовать первый вариант.

Рассылки нашего сайта на Subscribe.Ru
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz

 
 
Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2005 сайт progs.biz
© 2002-2005 Алексеев Игорь