Date in File Name/ru
Jump to navigation
Jump to search
Русский | English
Замечание: Эта статья является переводом оригинальной статьи с небольшим изменением. Изменение заключается в формате представления даты.
Дата в имени файла
В случае, если вам нужно создать имя файла с указанием текущей даты вида data_yyyy_mm_dd.txt, то вы можете использовать следующую простую функцию, чтобы получить строку имени файла:
QString FileNameHandler::todayFileName(){<br /> QDate today = QDate::currentDate();<br /> QString relativeFileName( "data_" );<br /> relativeFileName.append( QString::number( today.year() ) );<br /> relativeFileName.append( "''" );<br /> relativeFileName.append( QString::number( today.month() ) );<br /> relativeFileName.append( "''" );<br /> relativeFileName.append( QString::number( today.day() ) );<br /> relativeFileName.append( ".txt&quot; );<br /> return relativeFileName;<br />}
Или ее сокращенный вариант, который использует перегрузку оператора + для Doc:QString:
QString FileNameHandler::todayFileName(){<br /> QDate today = QDate::currentDate();<br /> QString relativeFileName( "data_" );<br /> relativeFileName ''= QString::number( today.month()<br />'' "''" + QString::number( today.day() )<br /> + "''" + QString::number( today.year() )<br /> + ".txt&quot;;
return relativeFileName;<br />}
Самой быстрой - и ясной - версией, без вызова пользовательской функции, является:
QString filename = QDate::currentDate().toString("'data_'yyyy_MM_dd'.txt'");