C++ 字符串转时间戳
时间: 2024-02-29 10:49:38 浏览: 178
在C++中,可以使用标准库中的时间函数和字符串处理函数来实现字符串转时间戳的功能。下面是一个示例代码:
```cpp
#include <iostream>
#include <ctime>
#include <sstream>
// 字符串转时间戳函数
std::time_t stringToTimestamp(const std::string& str) {
std::tm tm = {};
std::istringstream ss(str);
ss >> std::get_time(&tm, "%Y-%m-%d %H:%M:%S");
return std::mktime(&tm);
}
int main() {
std::string str = "2022-01-01 12:00:00";
std::time_t timestamp = stringToTimestamp(str);
std::cout << "时间戳:" << timestamp << std::endl;
return 0;
}
```
在上面的代码中,`stringToTimestamp`函数接受一个字符串参数,使用`std::istringstream`将字符串转换为`std::tm`结构体,然后使用`std::mktime`函数将`std::tm`结构体转换为时间戳。
注意,上述代码中的日期时间格式为"%Y-%m-%d %H:%M:%S",如果你的字符串格式不同,需要相应地修改`std::get_time`函数的格式参数。
阅读全文