views:

20

answers:

1

I know I can do this if I have a struct tm structure, but what if I want to do the same thing with a SYSTEMTIME. I could do this manually but just wondering if there's function that does this already.

Thanks

 void PrintTimeSCII(struct tm *time)
 {
     char timebuf[26] = {0};

     asctime_s(timebuf, 26, time);
    printf("%s\n", timebuf);
 }
A: 

GetDateFormat can be used for this. It can format the date using the appropriate format for a given locale. Below code shows how to use it for the user's default local, in short format.

char timebuf[26]
GetDateFormat(LOCALE_USER_DEFAULT, DATE_SHORTDATE,
              &sysTime, NULL, timeBuf, ARRAYSIZE(timeBuf);
Michael