Структура WIN32_FIND_DATA описывает файл, найденный функцией FindFirstFile, FindFirstFileEx или FindNextFile.
typedef struct _WIN32_FIND_DATA { DWORD dwFileAttributes; FILETIME ftCreationTime; FILETIME ftLastAccessTime; FILETIME ftLastWriteTime; DWORD nFileSizeHigh; DWORD nFileSizeLow; DWORD dwReserved0; DWORD dwReserved1; TCHAR cFileName[ MAX_PATH ]; TCHAR cAlternateFileName[ 14 ]; } WIN32_FIND_DATA, *PWIN32_FIND_DATA; |
dwFileAttributes
Атрибуты искомого файла. Этот член структуры может состоять из одного или нескольких нижеследующих значений.
Атрибут |
Предназначение |
---|---|
FILE_ATTRIBUTE_ARCHIVE | Файл или каталог - архивный файл или каталог. Приложения используют этот атрибут, чтобы отметить файлы для резервного копирования или перемещения. |
FILE_ATTRIBUTE_COMPRESSED | Файл или каталог - сжатые. Для файла, это означает, что все данные в файле сжимаются. Для каталога, это означает, что сжатие - значение по умолчанию для недавно созданных файлов и подкаталогов. |
FILE_ATTRIBUTE_DIRECTORY | Дескриптор идентифицирует каталог. |
FILE_ATTRIBUTE_ENCRYPTED | Файл или каталог - зашифрованные. Для файла, это означает, что все данные в файле зашифрованы. Для каталога, это означает, что шифрование - значение по умолчанию для недавно созданных файлов и подкаталогов. |
FILE_ATTRIBUTE_HIDDEN | Файл или каталог - скрытые. Они не включаются в обычный перечень файлов каталога. |
FILE_ATTRIBUTE_NORMAL | Файл или каталог не имеют других установленных атрибутов. Этот атрибут допустим только в том случае, если используется как единственный. |
FILE_ATTRIBUTE_OFFLINE | Данные файла доступны не сразу. Этот атрибут указывает, что данные файла были физически перемещены, чтобы сохраняться автономно. Этот атрибут используется программами Удаленного хранилища, иерархического управления памятью. Приложения не должны произвольно изменять этот атрибут. |
FILE_ATTRIBUTE_READONLY | Файл или каталог только для чтения. Приложения могут читать этот файл, но не могут записать в него или удалить его. Что касается каталога, приложения не могут удалить его. |
FILE_ATTRIBUTE_REPARSE_POINT | Файл имеет связанную точку монтирования. |
FILE_ATTRIBUTE_SPARSE_FILE | Файл - разреженный файл. |
FILE_ATTRIBUTE_SYSTEM | Файл или каталог - часть операционной системы или используются исключительно операционной системой. |
FILE_ATTRIBUTE_TEMPORARY | Файл используется для временного хранения. Файловые системы пытаются держать все данные в памяти для более быстрого доступа вместо того, чтобы сбрасывать данные назад на запоминающее устройство большой емкости. Временный файл должен удаляться приложением, как только он больше не нужен. |
ftCreationTime
Структура FILETIME, которая устанавливается, когда файл или каталог создавались. Если лежащая в основе файловая система не поддерживает время создания, этот член структуры равняется нулю.
ftLastAccessTime
Структура FILETIME. Для файла, структура устанавливает, когда последний раз читали из или писали в него или, в случае, если он исполняемый файл, запускали его. Для каталога, структура определяет, когда создавался каталог. Если лежащая в основе файловая система не поддерживает время последнего обращения к файлу, член структуры ftLastAccessTime равняется нулю.
В файловой системе FAT, указанная дата и файлов и каталогов должен быть исправляет, но время дня будет всегда устанавливаться в полночь.
ftLastWriteTime
Структура FILETIME. Для файла, структура устанавливает, когда последний раз была запись в файл, он обрезался или переписывался (например функциями WriteFile или SetEndOfFile). Эта дата и время не обновляются тогда, когда атрибуты файла или дескрипторы безопасности изменяются. Для каталога, структура определяет, когда каталог создавался. Если лежащая в основе файловая система не поддерживает последнее время записи, этот член структуры равняется нулю.
nFileSizeHigh
Старшее двойное слово (DWORD) значения размера файла, в байтах. Это значение равняется нулю, если размер файла не больше, чем определяет его MAXDWORD. Размер файла равен
|
nFileSizeLow
Младшее двойное слово (DWORD) значения размера файла, в байтах.
dwReserved0
Если член структуры dwFileAttributes включает атрибут FILE_ATTRIBUTE_REPARSE_POINT, этот член структуры устанавливает тэг монтирования. В противном случае, это значение не определяется и не должно использоваться.
dwReserved1
Зарезервированный для будущего использования.
cFileName
Символьная строка с нулем в конце, которая устанавливает имя файла.
cAlternateFileName
Символьная строка с нулем в конце, которая устанавливает альтернативное имя файла. Это имя является в классическом формате имени файла 8.3 (имя файла.расширение).
Замечания
Если файл имеет длинное имя, полное название появляется в поле cFileName, а обрезанная версия имени формата 8.3 появляется в поле cAlternateFileName. В противном случае, член структуры cAlternateFileName пустой. Как альтернативу, Вы можете использовать функцию GetShortPathName, чтобы найти версию имени файла формата 8.3.
Не все файловые системы могут фиксировать время создания и последнего доступа, и не все файловые системы фиксируют это одним и тем же способом. Например, в файловой системе FAT, время создания имеет дискретность 10 миллисекунд, время записи имеет дискретность 2 секунды, а время доступа имеет дискретность 1 день (фактическую дату доступа). В NTFS, время доступа имеет дискретность 1 час. Для получения дополнительной информации, см. Временные характеристики файла.
Смотри также
Обзор Управление файлами, Структуры, используемые в управлении файлами, FILETIME, FindFirstFile, FindFirstFileEx, FindNextFile, FileTimeToLocalFileTime, FileTimeToSystemTime, GetShortPathName, GetFileAttributesEx
Размещение и совместимость WIN32_FIND_DATA | ||
К | Windows Vista | Да |
л | Windows XP | Да |
и | Windows 2000 Professional | Да |
е | Windows NT Workstation | Да версии 3.5 и выше |
н | Windows Me | Да |
т | Windows 98 | Да |
Windows 95 | Да | |
С | Windows Server 2008 | Да |
е | Windows Server 2003 | Да |
р | Windows 2000 Server | Да |
в | Windows NT Server | Да версии 3.5 и выше |
е | ||
р | ||
Используемая библиотека | - | |
Используемая DLL | - | |
Заголовочный файл | ||
- объявлено в | Winbase.h | |
- включено в | Windows.h | |
Unicode | Реализуется как версии Unicode и ANSI в среде Windows NT/2000/XP. | |
Замечания по платформе | Не имеется |