QDate date(2022, 1, 1); // 创建一个表示2022年1月1日的日期对象
QDate today = QDate::currentDate();
获取日期信息:
int day = date.day(); // 获取日
int month = date.month(); // 获取月
int year = date.year(); // 获取年
int weekDay = date.dayOfWeek(); // 获取星期几
int dayOfYear = date.dayOfYear(); // 获取一年中的第几天
day()
:返回月份中的天数。
month()
:返回日期的月份。
year()
:返回日期的年份。
dayOfWeek()
:返回周几(1 = 星期一,7 = 星期日)。
dayOfYear()
:返回一年中的第几天。日期比较:QDate 提供了操作符来比较两个日期对象。
QDate date1(2022, 1, 1);
QDate date2(2022, 1, 15);
if (date1 < date2) {
// date1 在 date2 之前
}
日期间隔:使用 daysTo(const QDate &d) 方法可以 计算两个日期之间的天数。
qint64 daysBetween = date1.daysTo(date2); // 计算 date1 到 date2 的天数差
日期的有效性:使用 isValid() 方法可以检查一个 QDate 对象是否表示一个有效日期。
bool valid = date.isValid(); // 检查日期是否有效
日期格式化输出:QDate 的 toString() 方法可以将日期格式化为字符串。
QString dateStr = date.toString("yyyy-MM-dd"); // 格式化日期为 ISO 格式
设置日期:使用 setDate(int year, int month, int day) 方法可以设置 QDate 对象的日期。
bool success = date.setDate(2022, 12, 25); // 设置日期为2022年12月25日
闰年判断:使用 QDate::isLeapYear(int year) 静态函数可以判断指定的年份是否为闰年。
bool isLeap = QDate::isLeapYear(2024); // 判断2024年是否为闰年
QDate newDate = date.addDays(10); // 在当前日期上加10天
newDate = date.addMonths(1); // 在当前日期上加1个月
newDate = date.addYears(5); // 在当前日期上加5年
addDays(qint64 ndays):在当前日期上加上或减去指定的天数。
addMonths(int nmonths):在当前日期上加上或减去指定的月份数。
addYears(int nyears):在当前日期上加上或减去指定的年数。
int main() {
// 创建一个QDate对象,表示2022年1月1日
QDate date(2022, 1, 1);
qDebug() << "The date is:" << date.toString("yyyy-MM-dd");
// 创建一个QDate对象,表示当前日期
QDate currentDate = QDate::currentDate();
qDebug() << "Today's date is:" << currentDate.toString("yyyy-MM-dd");
return 0;
}
int main() {
// 创建一个QDate对象
QDate date(2022, 12, 25); // 圣诞节
// 在当前日期上加5天
QDate newDate = date.addDays(5);
qDebug() << "Five days after Christmas:" << newDate.toString("yyyy-MM-dd");
// 从当前日期减去1个月
newDate = date.addMonths(-1);
qDebug() << "One month before Christmas:" << newDate.toString("yyyy-MM-dd");
return 0;
}
int main() {
// 创建两个QDate对象
QDate startDate(2022, 1, 1);
QDate endDate(2022, 12, 31);
// 计算两个日期之间的天数差
qlonglong days = startDate.daysTo(endDate);
qDebug() << "Days between start and end of 2022:" << days;
return 0;
}
int main() {
// 创建一个QDate对象,尝试表示一个无效的日期
QDate invalidDate(2022, 2, 30); // 2月没有30日
qDebug() << "Invalid date:" << invalidDate.toString("yyyy-MM-dd") << ", Valid?" << invalidDate.isValid();
// 检查是否为闰年
bool isLeapYear = QDate::isLeapYear(2024);
qDebug() << "Is 2024 a leap year?" << isLeapYear;
return 0;
}
int main() {
// 创建一个QDate对象
QDate date(2022, 1, 1);
// 使用不同的格式输出日期
qDebug() << "Date in yyyy-MM-dd format:" << date.toString("yyyy-MM-dd");
qDebug() << "Date in dd-MM-yyyy format:" << date.toString("dd-MM-yyyy");
qDebug() << "Date in MM/dd/yy format:" << date.toString("MM/dd/yy");
return 0;
}
想了解更多
赶紧扫码关注
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/rfx/27908.html