如何在c++;? 如何使用标准库将C++中的字符串转换为日期和时间对象?< /P>

如何在c++;? 如何使用标准库将C++中的字符串转换为日期和时间对象?< /P>,c++,datetime,date,C++,Datetime,Date,这是我的绳子 string input_time = "071215"; //071215 represents 7th December 2015 input\u time需要转换为日期对象,以便我可以将其与日期对象进行比较 bool dateExpired = (input_time < now); //where now is current date time if(dateExpired) printf("Expired"); else printf("Not expired

这是我的绳子

string input_time = "071215"; //071215 represents 7th December 2015
input\u time
需要转换为日期对象,以便我可以将其与日期对象进行比较

bool dateExpired = (input_time < now);
//where now is current date time

if(dateExpired) printf("Expired");
else printf("Not expired");
bool dateExpired=(输入时间<现在);
//现在哪里是当前日期时间
如果(到期日)打印F(“到期”);
else printf(“未到期”);

您可以使用c函数
strtime
。如果你想要一个C++方式,你可以查看

如果你知道确切的格式,只要提取字段作为子字符串,然后通过一个字符串将它们运行到字符串中。
#include <strstream>

// . . .

string dayString = input_time.substring(0, 2);
istringstream iss(dayString);
int day;
iss >> day;

// . . .
#包括
// . . .
string dayString=输入时间。子字符串(0,2);
istringstream iss(日字符串);
国际日;
国际空间站>>日;
// . . .

对于带有日期和时间的严肃工作,我建议使用它。

由于字符串的每个部分都是固定的(我猜),因此很容易提取相关数据并将其放入
struct tm
中,该结构可用于获取
时间。区域设置也很重要。我住的地方是指2007年12月15日。你是坚持这种格式,还是可以使用标准格式,比如?@juanchopanza我坚持这种格式。无法使用标准格式我也不认为区域设置提供程序的格式会导致日期为“071215”。它可能会提供导致“07.12.15”的格式,但不是您需要的格式,但我没有检查此格式。我没有访问boost Library的权限是的,只需使用strTime然后将结果转换为您需要的格式。我担心您需要自己根据区域设置检查正确的格式(请参阅我的其他注释)