Calendar

Olá pessoal, estou utilizando um método para pegar o tempo em
millis do dia anterior que seria 04/08/2008 23:00 pm e
um para pegar o dia seguinte que seria 06/08/2008 01:00 am

[code]

        public static long pegaDataPontoI()throws ErrBds{
	
	Calendar c = Calendar.getInstance();
	c.add(Calendar.DAY_OF_WEEK,-1);
	c.set(Calendar.HOUR,23);
	c.set(Calendar.MINUTE,0);
	c.set(Calendar.SECOND,0);
	
	//System.out.println(Utilitarios.getFormatedDataHora(c.getTimeInMillis()));
	return  c.getTimeInMillis();
}

[code]

Esse codigo funciona corretamente até antes das 12:00 , depois ele se perde
e retorna o millis 1217944800671 que seria 05/08/2008 11:00:00

final 1218038400703 06/08/2008 13:00:00

como que eu seto AM_PM para que não se perca ou uma outra solução.

c.set(Calendar.AM_PM, Calendar.AM);

Valeu funcionou blz

Ola, em questão de horas, é melhor vc trabalhar com a constante Calendar.HOUR_OF_DAY, que vai de 0h até as 23h, confunde menos, e em relação a dias… a Calendar.DAY_OF_MONTH…