Boost c++ lidando com datas

1 resposta
rodrigo.bossini

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?

1 Resposta

Grinvon

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;
Criado 6 de dezembro de 2011
Ultima resposta 6 de dez. de 2011
Respostas 1
Participantes 2