Форум программистов, компьютерный форум CyberForum.ru
CyberForum.ru - форум программистов и сисадминов > > >
Восстановить пароль Регистрация
 
nill
Форумчанин
7 / 7 / 0
Регистрация: 16.08.2009
Сообщений: 398
17.02.2011, 12:49     Как узнать дату и время изменения файла   #1
Нужно чтобы прога на с++ просматривала тхт файлы в отдельной папке и записывала в переменные или массив дату и время их изменения. (не создания а именно изменения или другими словами дату и время редактирования файла)
как такое можно сделать ?
AdAgent
Объявления
17.02.2011, 12:49    Как узнать дату и время изменения файла
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2011, 12:49    Как узнать дату и время изменения файла

Посмотрите здесь:

C++ Как получить системное время и дату?

C++ Как узнать дату изменения файла?

C++ Поменять дату и время создания у файлов

C++ Как узнать время выполнения алгоритма

C++ Как вывести время и дату

C++ как узнать время работы программы решения алгоритма

C++ Вывести текущую дату и время

C++ Как узнать тип шаблонного класса во время выполнения программы?

C++ Как в программе использовать время и дату на компьютере

C++ как узнать какие изменения произошли в 2 документах

easybudda
Модератор
Эксперт C++
8378 / 4740 / 212
Регистрация: 25.07.2009
Сообщений: 8,981
17.02.2011, 15:48     Как узнать дату и время изменения файла   #2
Код C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream>
#include <iomanip>
#include <map>
#include <string>
#include <cstdlib>
#include <windows.h>
 
int main(){
    std::string dirPath;
    std::map<std::string, FILETIME> report;
    WIN32_FIND_DATAA findData;
    HANDLE hFind;
    SYSTEMTIME sutc, st;
 
    std::cout << "Path to find txt files: ";
    std::cin >> dirPath;
    dirPath += "\\*.txt";
 
    if ( ( hFind = FindFirstFileA(dirPath.c_str(), &findData) ) == INVALID_HANDLE_VALUE ){
        std::cerr << "No txt files found in this directory." << std::endl;
        return 1;
    }
 
    do {
        report[std::string(findData.cFileName)] = findData.ftLastWriteTime;
    } while ( FindNextFileA(hFind, &findData) );
 
    FindClose(hFind);
 
    std::cout << std::left << std::setw(30) << "File name" << "Last changed" << std::endl;
    for ( std::map<std::string, FILETIME>::const_iterator i = report.begin(); i != report.end(); ++i ){
        FileTimeToSystemTime(&(i->second), &sutc);
        SystemTimeToTzSpecificLocalTime(NULL, &sutc, &st);
        std::cout << std::left << std::setw(30) << i->first << st.wDay << '-' << st.wMonth << '-' << st.wYear << ' ' 
            << st.wHour << ':' << st.wMinute << std::endl;
    }
 
    system("pause");
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать новую тему
Опции темы

Текущее время: 21:27. Часовой пояс GMT +4.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.