Is there a good equivalent implementation of
strptime() available for Windows? Unfortunately, this POSIX function does not appear to be available.
Open Group description of strptime - summary: it converts a text string such as
"MM-DD-YYYY HH:MM:SS" into a
tm struct, the opposite of
An open-source version (BSD license) of
strptime() can be found here: http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/time/strptime.c?rev=HEAD
You'll need to add the following declaration to use it:
char *strptime(const char * __restrict, const char * __restrict, struct tm * __restrict);
If you don't want to port any code or condemn your project to boost, you can do this:
struct tm(subtract 1 from month and 1900 from year -- months are 0-11 and years start in 1900)
mktimeto get a UTC epoch integer
Just remember to set the
isdst member of the
struct tm to -1, or else you'll have daylight savings issues.