在c ++中读取日期中的月份部分

时间:2012-04-05 05:17:11

标签: c++ function datetime date datetime-format

我有两个日期,即文件创建日期和系统日期,都是int格式的

        "20120304","20120404" which is something like YYYYMMDD.

我只想把这两个日期的MM部分从函数作为整数返回这两个日期。

请提供一些示例

由于

3 个答案:

答案 0 :(得分:3)

因为int类型使用int mm=(yyyymmdd/100)%100

答案 1 :(得分:0)

如果它们始终采用YYYYMMDD格式,则将[4]的子字符串取为长度为2。

答案 2 :(得分:0)

虽然我更喜欢@ keety的答案,但还有另外一种方法。 你可以使用字符串流:

例如:

#include <sstream>

int i = 5;
std::string s;
std::stringstream out;
out << i;
s = out.str();

所以在你的字符串为YYYYMMDD后,字符串可变。 substr(4,2)将是你的月份。 稍后您可以使用strtol转换回整数。