Oque tem de errado nessa funçãozinha basica galera?

é uma função pra retornar apenas os dias da semana de uma faixa de data…

porem do dia 01/10/2006 ao dia 10/10/2006, ele retorna 6 dias ao invés de 7… NÃO SEI MAIS OQ FAZER…HEHEHEHE

public class Funcoes{
  public static int DiasUteis(Date dataini, Date datafim){
    int dias=0;

    Calendar calini = new GregorianCalendar();
    Calendar calfim = new GregorianCalendar();

    calini.setTime(dataini);
    calfim.setTime(datafim);    
 
    while(calini.before(calfim) || calini.equals(calfim)){
    
         
      if ((calini.get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY) && (calini.get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY)){
        dias+= 1;  //dias+= -1;
      } 
   

   calini.add(Calendar.DAY_OF_MONTH , 1);
   }
   
   return dias;  
  }
}

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - Carneiro[/color][/size] :joia:

kara…

Aqui tá dando 7 dias normal…

import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class Main {
	
	public static void main(String[] args) {
		Date data1 = new Date("10/01/2006");
		Date data2 = new Date("10/10/2006");
		
		System.out.println( diasUteis(data1, data2) );
	}
	
	public static int diasUteis(Date dataini, Date datafim){
		int dias=0;

		Calendar calini = new GregorianCalendar();
	    Calendar calfim = new GregorianCalendar();

	    calini.setTime(dataini);
	    calfim.setTime(datafim);
	 
	    while(calini.before(calfim) || calini.equals(calfim)){ 
	    	if ((calini.get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY) && (calini.get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY)){
	    		dias+= 1;  //dias+= -1;
	    	}
	    	calini.add(Calendar.DAY_OF_MONTH , 1);
	    }
	   
	    return dias; 
	}
	
}

eu acho q o problema esta havendo por causa do horario de verao ou algo assim…olha sóó

Glera eu estou passando duas datas…
a inicial
Thu Oct 05 00:00:00 BRT 2006

e a final

Tue Oct 10 00:00:00 BRST 2006

oq é esse BRST E BRT e como eu faço pra eles ficarem igual??

eu acho q eu tinha formatar isso de algum jeito para chegar certo na função …