Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
| | |
[C++] Как получить время создания файла? 03.09.02 00:41 Число просмотров: 1491
Автор: beetle <beetle> Статус: Member
|
__int64 CExSearch::FTtoQW(LARGE_INTEGER* pLI){
__int64 qw;
qw = pLI->HighPart;
qw <<= 32;
return qw = pLI->LowPart;
}
|
<programming>
|
[C++] Как получить время создания файла? 23.08.02 14:08
Автор: Dr. Nebula Статус: Незарегистрированный пользователь
|
Всем привет!
Есть следующий трабл - проходим в цикле функцией FindNextFile(....). Для каждого найденного файла необходимо получить время его создания.
Каким образом можно это сделать? Функции типа GetFileTime() и структура WIN32_FIND_DATA.ftCreationTime выдают какую то чушь - например отрицательные числа...
Заранее тенькс
|
|
[C++] Как получить время создания файла? 24.08.02 23:42
Автор: HandleX <Александр М.> Статус: The Elderman
|
> Всем привет! > Есть следующий трабл - проходим в цикле функцией > FindNextFile(....). Для каждого найденного файла необходимо > получить время его создания. > Каким образом можно это сделать? Функции типа GetFileTime() > и структура WIN32_FIND_DATA.ftCreationTime выдают какую то > чушь - например отрицательные числа... > Заранее тенькс
Как это чушь? У всех не чушь...
Может на понятно, что эта структура, что заполняется после вызова GetFileTime содержит члены типа "The FILETIME structure is a 64-bit value representing the number of 100-nanosecond intervals since January 1, 1601.
typedef struct _FILETIME { // ft
DWORD dwLowDateTime;
DWORD dwHighDateTime;
} FILETIME;
Т.е. это 64-битные значения. Интересно, чем знаменателен 1601 год? По-моему, весьма смутноые были времена ;-)))))
Ну и т.п. Разберись, почитай... Проверь код ;-)
|
| |
[C++] Как получить время создания файла? 25.08.02 01:48
Автор: Dr. Nebula Статус: Незарегистрированный пользователь
|
> Т.е. это 64-битные значения. Интересно, чем знаменателен > 1601 год? По-моему, весьма смутноые были времена ;-)))))
Времена были действительно смутные, как счас помню :)
Но может я савсем ламо, но что мне делать с этим 64-битным значением? Как его перевести в нормальное число, месяц и время?
|
| | |
[C++] Как получить время создания файла? 03.09.02 00:41
Автор: beetle <beetle> Статус: Member
|
__int64 CExSearch::FTtoQW(LARGE_INTEGER* pLI){
__int64 qw;
qw = pLI->HighPart;
qw <<= 32;
return qw = pLI->LowPart;
}
|
| | |
[C++] Отредактировано. Заголовок должен был быть "FileTimeToSystemTime" 25.08.02 09:29
Автор: Biasha <Бяша> Статус: Member Отредактировано 25.08.02 22:12 Количество правок: 1
|
|
| | | |
Где тело? Ну ладно, раз Biasha спешил, я отвечу ;-) 25.08.02 10:46
Автор: HandleX <Александр М.> Статус: The Elderman
|
Есть прелестные функции Win32 API типа FileTimeToSystemTime, FileTimeToDosDateTime, какая больше понравится.
Нам не надо мучаться, считая наносекунды с 1 января 1601 года... Пусть это делает за нас Microsoft, она любит геморрой ;-)))))))))))))))))))
|
|
|