时间字符串转chrono::system_clock
std::chrono::system_clock::time_point parse_date(const std::string& date_str) {std::tm tm = {};std::istringstream ss(date_str);ss >> std::get_time(&tm, "%Y-%m-%d"); // 假设日期字符串格式为YYYY-MM-DDreturn std::chrono::system_clock::from_time_t(std::mktime(&tm));
}
解析日期字符串为tm结构体
std::tm parse_date(const std::string& date_str) {std::tm tm = {};// std::istringstream ss(date_str);std::istringstream ss(date_str);ss >> std::get_time(&tm, "%Y-%m-%d"); // 假设日期字符串格式为YYYY-MM-DD// 更新time_t结构体(更新时间) std::mktime()std::chrono::system_clock::from_time_t(std::mktime(&tm));ss >> std::get_time(&tm, "%Y-%m-%d"); // 假设日期字符串格式为YYYY-MM-DDreturn tm;
}
将tm结构体日期转换为字符串
std::string format_date(const std::tm &date) {std::stringstream ss;ss << std::put_time(&date, "%Y-%m-%d");return ss.str();
}
获取当前系统时间
std::string ReturnLocalTime(std::string geshi)
{auto now = std::chrono::system_clock::now();auto nowTime_t = std::chrono::system_clock::to_time_t(now);std::stringstream ss;ss << std::put_time(localtime(&nowTime_t), geshi.c_str());return ss.str();
}