- 此问题在此处已有答案**:
How to parse date/time from string?(4个答案)
How to parse a date string into a c++11 std::chrono time_point or similar?(4个答案)
2天前关闭。
我有一个字符串是日期。是否有一个函数从标准库,可以解析它在任何数字格式(如时间戳或朱利安日)
例如
std::string str("01/01/2017");//Local format date
UINT64 timestamp = function(str);
我不想在函数中传递格式化日期。我只想知道一个字符串是以本地格式表示的。
1条答案
按热度按时间ac1kyiln1#
如果你想使用本地日期格式,你可以尝试
std::get_time
(从C11开始可用)或POSIX C函数strptime
,格式为"x"
。| x|解析区域设置的标准日期表示形式|全部|- -www.示例网站cppreference.com
两者都返回日历时间
struct tm
,如果需要,可以使用localtime
或gmtime
将其转换为时间戳。请注意,您必须先设置应用程序的C和 C 环境,以便能够使用您的操作系统区域设置,而不是经典的C语言环境。请参阅
locale
和std::locale
。最好同时设置这两个语言环境,以便它们同步,不会出现不好的意外。