gpt4 book ai didi

c++ - 解析 yyyy-MM-dd HH :mm:ss date time string?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:28:54 28 4
gpt4 key购买 nike

我有一个来自 mysql 的日期时间。我需要提取每个部分:

int year;
int month;
int day;
int hour;
int min;
int sec;

例子:

2014-06-10 20:05:57

对于每个组件,是否有比通过 stringstream 运行它更简单的方法? (请不要使用 boost 或 c++11 解决方案)。

谢谢

最佳答案

sscanf()可能是最直接的选择。它是一个 C 库函数,因此纯粹主义者可能不赞成它。

这是一个例子:

int year;
int month;
int day;
int hour;
int min;
int sec;

const char * str = "2014-06-10 20:05:57";

if (sscanf(str, "%d-%d-%d %d:%d:%d", &year, &month, &day, &hour, &min, &sec) == 6)
{
// sscanf() returns the number of elements scanned, so 6 means the string had all 6 elements.
// Else it was probably malformed.
}

And here is a live test .

另一个不错的解决方案也是使用 C++11 regex这将使字符串的解析更加稳健。

关于c++ - 解析 yyyy-MM-dd HH :mm:ss date time string?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24153097/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com