Книга: Системное программирование в среде Windows
Определение размера файла
Размер файла можно получить, используя значение указателя файла, возвращаемое функцией SetFilePointer, если при вызове этой функции задать количество байтов, на которое должен быть перемещен указатель файла, равным 0. Для этой же цели можно воспользоваться также функцией GetFileSize.
DWORD GetFileSize(HANDLE hFile, LPDWORD lpFileSizeHigh)
Возвращаемое значение: младшая компонента размера файла. Значение 0xFFFFFFFF указывает на возможную ошибку; для проверки наличия ошибок следует использовать функцию GetLastError.
Обратите внимание, что для возвращения размера файла используется, по сути, тот же способ, что и для возвращения фактического указателя файла функцией SetFilePointer.
Функции GetFileSize и GetFileSizeEx (возвращающая 64-битовое значение размера файла в одном элементе данных) требуют указания дескриптора, открытого для файла. Для определения размера файла можно применять также имя файла. Функция GetCompressedFileSize возвращает размер сжатого файла, тогда как функция FindFirstFile, которая обсуждается в разделе "Атрибуты файлов и управление каталогами" далее в этой главе, предоставляет точный размер именованного файла.
- ГЛАВА 3 Усовершенствованные средства для работы с файлами и каталогами и знакомство с реестром
- Эффективная работа с временными файлами сортировки
- Уменьшение размера, занимаемого индексами
- 1.2. Определение количества информации. Единицы измерения количества информации
- Определение версии клиента
- Единое имя файла параметров InterBase
- Определение пользовательского формата числовых данных
- Параметры конфигурационного файла InterBase
- Определение целей. Построение цепочек
- 13. Зарабатываем на своих файлах: файлообменники, загружаеми получаем процент за скачивание
- Листинг 15.11. Код для загрузки файла с Web-сервера
- Определение необходимого системного вызова