使用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(这是美国时间格式)
答案 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
将从输入格式转换为所需的输出格式。
当然,如果您需要处理大量输入格式,则识别正确的格式或日期,月份,年份和时间会更复杂。但是既然你可以手动完成它,也应该可以找出所有可能的格式。