Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/155.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在Win32中从字符串解析日期_C++_Windows_Winapi - Fatal编程技术网

C++ 在Win32中从字符串解析日期

C++ 在Win32中从字符串解析日期,c++,windows,winapi,C++,Windows,Winapi,我有一个包含日期的字符串,另一个字符串包含第一个字符串的日期格式。我是否可以调用一个函数将该日期转换为类似SYSTEMTIME结构的内容?基本上,我想要的是相反的。否,但您可以编写一个函数,将日期格式字符串转换为sscanf格式字符串和一系列变量。然后将变量中的数据复制到SYSTEMTIME结构中,就完成了设置 这并不简单,但如果您必须支持多种不同的日期格式,它可能是最灵活的安排。它并不像您所描述的那样,但我首先要使用COleDateTime::ParseDateTime。它使用本地化的日期时间

我有一个包含日期的字符串,另一个字符串包含第一个字符串的日期格式。我是否可以调用一个函数将该日期转换为类似SYSTEMTIME结构的内容?基本上,我想要的是相反的。

否,但您可以编写一个函数,将日期格式字符串转换为
sscanf
格式字符串和一系列变量。然后将变量中的数据复制到
SYSTEMTIME
结构中,就完成了设置


这并不简单,但如果您必须支持多种不同的日期格式,它可能是最灵活的安排。

它并不像您所描述的那样,但我首先要使用
COleDateTime::ParseDateTime
。它使用本地化的日期时间格式。

在源文件中

我有一个函数,可以读取一系列不同格式的日期,这个函数叫做

bool kGUIDate::Setz(const char *datestring)
它是一个以天/月/年为单位读取数据的类,还处理小时/分钟/秒

代码是LGPL,所以可以随意复制它

/* formats excepted are: */
/* yyyy-mm-dd */
/* Wdy, DD-Mon-YY HH:MM:SS GMT */
/* Wdy, D Mon YY HH:MM:SS GMT */

如果您有POSIX系统,则可以使用该函数。不幸的是,MSVC2005在其C运行时中似乎没有这个函数;MinGW for Windows确实如此。

我看到了该函数,并且考虑到它不采用格式,在某些情况下(月/日/年与日/月/年)它可能会混淆。但它确实采用了区域设置,因此这应该会有所帮助。我不记得它是否有:试试看。这与问题无关。完全相反,我认为这是答案。如果你不想使用MFC,可以直接使用VarDateFromStr。[VarDateFromStr]()