é 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 …