//input demo:2001-01-18 09:41:50 std::time_t TimeStringToTimestamp(std::string datetime) { std::tm t{}; std::istringstream ss(datetime); ss >> std::get_time(&t, "%Y-%m-%d %H:%M:%S"); if (ss.fail()) { throw std::runtime_error{ "failed to parse time string" }; } std::time_t time_stamp = mktime(&t); return time_stamp; } //input demo:1401920000 std::string TimestampToTimeString(const std::time_t timestamp) { struct tm* dt; char buffer[30]; dt = localtime(×tamp); strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", dt); return std::string(buffer); }