Get a char at a time (or find an appropriate member that reads n chars)
in order to separate the various values as different strings, then
extract the actual values from these strings (either using the extractor
operator on a stringstream or by passing a C-string to the appropriate C
function [*] that read ints from a C-string).
About time_t, look up its specs and see how to build it using the values
that you just extracted from that server string using some variant of
the method delineated above.
Getting the time_t is just a matter of filling one struct tm variable
with the components and calling mktime().
atoi()/atol() have the problem that they silently stop if the string
contains characters other than digits; I was hoping for a method that
would also check the format (or skip non-digits instead of stopping). I
had to do something like
string strDate = "20100803102438";
string::const_iterator
    it = strDate.begin();
istringstream
    stream;
stream.exceptions(stream.badbit | stream.failbit);
stream.str(string(it, it += 4));
stream >> year;
stream.str(string(it, it += 2));
stream >> month;
stream.str(string(it, it += 2));
stream >> day;
//...
//...
However I think this does not check for non-digits and I think scanf can
 do the job in just one call.
Thank you,
Timothy Madden