Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Другие методы получения атрибутов файлов и каталогов



Функции FindFirstFile и FindNextFile позволяют получать следующую информацию об атрибутах файла: флаги атрибутов, три штампа времени и размер файла. Для рабо­ты с атрибутами есть несколько других функций, включая ту, что позволяет их устанавли­вать, и они могут работать непосредственно с дескриптором открытого файла без просмот­ра каталога или указания имени файла. Три таких функции, GetFileSize, GetFileSizeEx и SetEndOfFile, были описаны выше.

Другие функции служат для получения остальных атрибутов. Например, для получения штампов времени открытого файла предназначена следующая функция:

BOOL GetFileTime (HANDLE hFile, LPFILETIME lpftCreation, LPFILETIME lpftLastAccess, LPFILETTMF lpftLastWrite)

Значения времени здесь и в структуре WIN32_FIND_DATA — 64-разрядные целые числа без знака, указывающие 100-наносекундных единиц (107 единиц в секунду), прошедших с исходного времени (1 января 1601 г.), в форме всеобщего скоординиро­ванного времени (Universal Coordinated Time — UTC). Существует несколько удобных функций для работы со временем.

• FileTimeToSystemTime выражает время файла в более привычных единицах — от лет до секунд и миллисекунд. Эта форма более пригодна, например, для отображения или вывода времени.

• SystemTimeToFileTime производит обратное преобразование: времени, выраженного в этих единицах, во время файла.

• CompareFileTime определяет, новее ли один файл, чем другой (-1), старше ли (+1) или их возрасты равны (0).

• SetFileTime изменяет штампы времени; временные параметры, которые не
надо изменять, указываются в вызове функции как 0. NTFS поддерживает все
три временных параметрах, но FAT дает точный результат только для времени
последнего доступа.

• FileTimeToLocalFileTime и LocalFileTimeToFileTime преобразуют UTC в
местное время и обратно.

Функция GetFileType позволяет различать дисковые файлы, символьные файлы (фактически это устройства наподобие принтеров и консолей) и каналы. Здесь файл также указывается своим дескриптором.

Функция GetFileAttributes по указанному имени файла и каталога возвращает только атрибуты.

DWORD GetFileAttributes (LPCTSTR lpszFileName)

Возвращаемое значение: атрибуты файла или 0xFFFFFFFF в случае неудачи.

Атрибуты можно проверить на соответствие комбинациям определенных значений. Некоторые атрибуты, такие как флаг временного файла, устанавливаются при вызове CreateFile. Значения атрибутов могут быть следующими:

FILE_ATTRIBUTE_DIRECTORY FILE_ATTRIBUTE_NORMAL FILE_ATTRIBUTE_READONLY FILE_ATTRIBUTE_TEMPORARY

Функция SetFileAttributes изменяет эти атрибуты в указанном по имени файле.





Дата публикования: 2015-11-01; Прочитано: 369 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...