Date in File Name/ru

From Qt Wiki
Jump to navigation Jump to search
This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

Русский | English

Замечание: Эта статья является переводом оригинальной статьи с небольшим изменением. Изменение заключается в формате представления даты.

Дата в имени файла

В случае, если вам нужно создать имя файла с указанием текущей даты вида data_yyyy_mm_dd.txt, то вы можете использовать следующую простую функцию, чтобы получить строку имени файла:

QString FileNameHandler::todayFileName(){
 QDate today = QDate::currentDate();
 QString relativeFileName( "data_" );
 relativeFileName.append( QString::number( today.year() ) );
 relativeFileName.append( "''" );
 relativeFileName.append( QString::number( today.month() ) );
 relativeFileName.append( "''" );
 relativeFileName.append( QString::number( today.day() ) );
 relativeFileName.append( ".txt" );
 return relativeFileName;
}

Или ее сокращенный вариант, который использует перегрузку оператора + для Doc:QString:

QString FileNameHandler::todayFileName(){
 QDate today = QDate::currentDate();
 QString relativeFileName( "data_" );
 relativeFileName ''= QString::number( today.month()
'' "''" + QString::number( today.day() )
 + "''" + QString::number( today.year() )
 + ".txt";

return relativeFileName;
}

Самой быстрой - и ясной - версией, без вызова пользовательской функции, является:

QString filename = QDate::currentDate().toString("'data_'yyyy_MM_dd'.txt'");