根据 的Qt 文档QDate,您可以指定您想要的格式QDate::toString()。
现在,为了避免困扰您的重复,您可以在某处指定一个static包含应用程序格式的变量。然后每次调用时将其作为参数提供QDate::toString()。这样,您将必须始终使用相同的变量/格式。
但是如果你真的不想给出任何参数,解决方案是通过将默认格式更改为你想要的格式来子类化QDate并重新定义方法。toString()
例如:
.h:
class MyDate final : public QDate
{
private:
static QString my_format;
public:
MyDate();
MyDate(int y, int m, int d);
MyDate(const QDate & date);
QString toFormattedString() const;
};
.cpp:
QString MyDate::my_format = "yyyy - MMMM dddd dd"; // Specify the format you desire.
MyDate::MyDate() : QDate()
{}
MyDate::MyDate(int y, int m, int d) : QDate(y, m, d)
{}
MyDate::MyDate(const QDate & date) : QDate(date)
{}
QString MyDate::toFormattedString() const
{
return toString(my_format);
}
您可以按如下方式进行(示例):
MyDate md(QDate::currentDate());
qDebug() << md.toFormattedString();
toFormattedString()为了使代码更易于理解,我在这里命名了该方法。随意调整它。
我希望它会有所帮助。