我有两个日期,即文件创建日期和系统日期,都是int格式的
"20120304","20120404" which is something like YYYYMMDD.
我只想把这两个日期的MM部分从函数作为整数返回这两个日期。
请提供一些示例
由于
答案 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
转换回整数。