I\'m trying to get the current time as a \"YYYY-MM-DD-HH-MM-SS\" formatted string in an elegant way. I can take the current time in ISO format from Boost\'s \"Date Time\" li
The answer depends on what you mean by get and take. If you are trying to output a formatted time string, use strftime(). If you are trying to parse a text string into a binary format, use strptime().
Use std::strftime, it is standard C++.
#include <cstdio>
#include <ctime>
int main ()
{
std::time_t rawtime;
std::tm* timeinfo;
char buffer [80];
std::time(&rawtime);
timeinfo = std::localtime(&rawtime);
std::strftime(buffer,80,"%Y-%m-%d-%H-%M-%S",timeinfo);
std::puts(buffer);
return 0;
}