Boost c++ lidando com datas

Oi pessoal,

Tenho um arquivo com datas no formato 20110104-07:48:00.488. Tô tentando criar objetos ptime da boost para fazer algumas operações como verificar se uma data é maior que a outra etc. Queria fazer isso sem ter de mexer nas datas que tenho no arquivo, porque são milhões de registros. Me parece que o que preciso é algo como o SimpleDateFormat do java…mas não tô achando algo equivalente na boost…cheguei a tentar usar os tais de time_input_facet mas não consegui o que queria ainda…Alguém pode dar uma dica?

No boost você tem o Gregorian, onde há as funções de checagem de data:

greg_year year(), greg_month month() const, greg_day day() cons, etc.

Você pode usar o datetime do boost e até o date normalmente.

Veja um exemplo de comparação:

date aniversario(from_simple_string("2012-03-22"));

date hoje = day_clock::local_day();

days dias = hoje - aniversario;

days sete_dias(7);

if (sete_dias < dias)
std::cout << "Faltam poucos dias para o aniversário" << std::endl;
else
std::cout << "Faltam muitos dias para o aniversário" << std::endl;