Russian Qt Forum

Qt => Общие вопросы => Тема начата: kadr от Ноябрь 03, 2009, 13:11



Название: Дата обновления папки
Отправлено: kadr от Ноябрь 03, 2009, 13:11
Народ помогите, надо узнать дату последнего изменения (время последнего доступа) папки, то есть программа должна проверять если файлы в директории были обновления, то есть ее открывали то соответсвенно программа продолжает свою работы иначе выдает сообщение!   


Название: Re: Дата обновления папки
Отправлено: Павел_F. от Ноябрь 03, 2009, 13:34
QFileInfo::lastModified () Возвращает QDateTime
Код:
QDataTime LastTouch; // Это и есть время последнего доступа.
QString path("Нужный путь");
QFileInfo inf( path);
LastTouch = inf.lastModified();


Название: Re: Дата обновления папки
Отправлено: kadr от Ноябрь 03, 2009, 14:33
QFileInfo::lastModified () Возвращает QDateTime
Код:
QDataTime LastTouch; // Это и есть время последнего доступа.
QString path("Нужный путь");
QFileInfo inf( path);
LastTouch = inf.lastModified();
Он показывает время и год, а мне надо что бы он показывал число типа 02.11.2009, как это сделать?


Название: Re: Дата обновления папки
Отправлено: Павел_F. от Ноябрь 03, 2009, 14:36
QDataTime это дата и время. Скажите что конкретно и в каком виде вы хотите получить. нужно строкой, интами как? А вообще полезно читать документацию по нужным классам, благо у Qt она вполне доступная.


Название: Re: Дата обновления папки
Отправлено: spectre71 от Ноябрь 03, 2009, 17:05
....
Он показывает время и год, а мне надо что бы он показывал число типа 02.11.2009, как это сделать?

Не полениться, зайти в Assistant и посмотреть QDataTime, QData ...


Название: Re: Дата обновления папки
Отправлено: kadr от Ноябрь 03, 2009, 20:29
Мне нужно получить дату последнего доступа к папке в формате dd.MM.yyyy(12.11.2009)


Название: Re: Дата обновления папки
Отправлено: Alex Custov от Ноябрь 04, 2009, 01:02
Мне нужно получить дату последнего доступа к папке в формате dd.MM.yyyy(12.11.2009)

Внезапно решение -

Код:
qDebug() << inf.lastModified().toString("dd.MM.yyyy");

Изучай документацию. Без этого никуда.


Название: Re: Дата обновления папки
Отправлено: kadr от Ноябрь 04, 2009, 21:16
Мне нужно получить дату последнего доступа к папке в формате dd.MM.yyyy(12.11.2009)

Внезапно решение -

Код:
qDebug() << inf.lastModified().toString("dd.MM.yyyy");

Изучай документацию. Без этого никуда.
Это я уже пробовал не помогает вылетает ошибка,это прокатывает с QDate, а c QDateTime не помогает!


Название: Re: Дата обновления папки
Отправлено: Alex Custov от Ноябрь 04, 2009, 22:37
Это я уже пробовал не помогает вылетает ошибка,это прокатывает с QDate, а c QDateTime не помогает!

А какая ошибка мы должны догадаться силой мысли?  ::)


Название: Re: Дата обновления папки
Отправлено: Павел_F. от Ноябрь 05, 2009, 07:39
У меня вот этот код прекрасно работает и никаких ошибок не появляется.
Код:
  QDateTime LastTouch; // Это и есть время последнего доступа.
  QString path("/home/Pavel_F./MyFolder");
  QFileInfo inf( path);
  LastTouch = inf.lastModified();
  QString strLastTouch;
  strLastTouch = LastTouch.toString( QString("dd.MM.yyyy"));
  qDebug() << strLastTouch;


Название: Re: Дата обновления папки
Отправлено: spectre71 от Ноябрь 05, 2009, 10:47
Это я уже пробовал не помогает вылетает ошибка,это прокатывает с QDate, а c QDateTime не помогает!

Загляни наконец в доку:

посмотри методы QDataTime!
  QDate QDateTime::date () const
посмотри методы QData!
  QString QDate::toString ( const QString & format ) const