ola pessoal
preciso saber a diferenca entre 2 datas em meses
tentei o seguinte, deu certo para datas do mesmo ano
de ano diferente não da certo
se for a data de hoje e inicio de janeiro de 2011 retorna 2 (variavel mes )
se for a data de hoje e inicio de dezembro de 2010 retorna -9, tinha que retorna 3
como acertar isso
obrigado
Isso é questão de lógica amigo, e não de codificação. Não estou lhe ajudando em nada te dando mastigado isso…mas vamos lá.
Quando a data inicial for maior q a data atual (não sei se essa data pode ser maior q a data atual no seu código…) basta adicionar o seguinte trecho antes do cálculo que efetuas hoje para calcular a diferença:
((dataAtual - dataInicial)*12)
o trecho acima dá o total de meses desses 2 anos…é só calcular isso com seu -9 e pronto, dá o total certo de meses.
thorian-maskier
Isso é questão de lógica amigo, e não de codificação. Não estou lhe ajudando em nada te dando mastigado isso…mas vamos lá.
Quando a data inicial for maior q a data atual (não sei se essa data pode ser maior q a data atual no seu código…) basta adicionar o seguinte trecho antes do cálculo que efetuas hoje para calcular a diferença:
Calendar data_aqui = Calendar.getInstance();
Calendar data_hoje = Calendar.getInstance();
data_aqui.setTime( getdata_inc() );
data_hoje.setTime( new Date() ) ;
int mes = 0 ;
mes = ((dataAtual - dataInicial)*12) - (data_hoje.get(Calendar.MONTH) - data_aqui.get(Calendar.MONTH));
M
marcoscorso
o que é dataatual ? e datainicial ?
sim, a data_inc nunca podera ser maior que a data_hoje
Polverini
Cara só uma dica da uma olhada no JodaTime ajuda muito com esses tipos de trabalho, uso bastente.