使用C ++将任何形式的日期时间字符串格式更改为美国日期时间格式

时间:2016-03-30 07:12:17

标签: c++

使用C ++将任何形式的日期时间字符串格式更改为美国日期时间格式 例 格式1:dddd,dd MMMM,yyyy h:mm:ss tt 格式2:dd MMMM yyyy h:mm:ss tt 格式3:MMH / DD / YYYY,HH:mm:ss

以上格式必须转换并打印成以下格式 dddd,MMMM dd,yyyy h:mm:ss tt(这是美国时间格式)

1 个答案:

答案 0 :(得分:1)

由于所有示例格式都不同(例如出现逗号,空格或斜杠),您可以尝试通过检查格式特定的字符来识别输入格式:

std::string inputDate = "Wed, 31 Mar, 2016 10:28:00";
if (inputDate.find(",") < std::string::npos) handleFormat1();
else if (inputData.find("/") < std::string::npos) handleFormat3();
else handleFormat2();

其中函数handleFormat将从输入格式转换为所需的输出格式。

当然,如果您需要处理大量输入格式,则识别正确的格式或日期,月份,年份和时间会更复杂。但是既然你可以手动完成它,也应该可以找出所有可能的格式。