我复制了一份: /** @return the number of open days between sysdate and dateRecup*/ public static int nbWorkdays(String dateRecup) { GregorianCalendar calendar = new GregorianCalendar(); Date sysDate = new Date(); calendar.setTime(sysDate);
//get a list of french holidays... String valRetour[] = new Workdays().calc(calendar.get(Calendar.YEAR)); SimpleDateFormat formatDate = new SimpleDateFormat("dd/MM/yyyy"); String curDate = formatDate.format(sysDate); Date dateConvert = null;
int joursOuvres = 0; while (!dateRecup.equals(curDate)) { try { dateConvert = formatDate.parse(dateRecup); calendar.setTime(dateConvert); } catch (ParseException pe){ } /*Ajout d'une journ閑 ?la date d'entr閑*/ dateConvert.setTime(dateConvert.getTime()+(24 * 3600 * 1000)); /*Conversion de la date d'entr閑 en String*/ dateRecup = formatDate.format(dateConvert); joursOuvres++; /*Soustraction d'une journ閑 si dateRecup = samedi ou dimanche*/ if (calendar.get(Calendar.DAY_OF_WEEK) == 7 || calendar.get(Calendar.DAY_OF_WEEK) == 1) joursOuvres--; else { /*Soustraction d'une journ閑 si dateRecup est f閞i?/ for (int i = 0; i < valRetour.length; i++) { if(valRetour[i].toString().indexOf(dateRecup) != -1) joursOuvres--; } } } return joursOuvres; }
/** @return the number of open days between sysdate and dateRecup*/
public static int nbWorkdays(String dateRecup)
{
GregorianCalendar calendar = new GregorianCalendar();
Date sysDate = new Date();
calendar.setTime(sysDate);
//get a list of french holidays...
String valRetour[] = new Workdays().calc(calendar.get(Calendar.YEAR)); SimpleDateFormat formatDate = new SimpleDateFormat("dd/MM/yyyy");
String curDate = formatDate.format(sysDate); Date dateConvert = null;
int joursOuvres = 0; while (!dateRecup.equals(curDate))
{
try {
dateConvert = formatDate.parse(dateRecup);
calendar.setTime(dateConvert);
}
catch (ParseException pe){
}
/*Ajout d'une journ閑 ?la date d'entr閑*/
dateConvert.setTime(dateConvert.getTime()+(24 * 3600 * 1000));
/*Conversion de la date d'entr閑 en String*/
dateRecup = formatDate.format(dateConvert); joursOuvres++; /*Soustraction d'une journ閑 si dateRecup = samedi ou dimanche*/
if (calendar.get(Calendar.DAY_OF_WEEK) == 7
|| calendar.get(Calendar.DAY_OF_WEEK) == 1) joursOuvres--;
else
{
/*Soustraction d'une journ閑 si dateRecup est f閞i?/
for (int i = 0; i < valRetour.length; i++)
{
if(valRetour[i].toString().indexOf(dateRecup) != -1) joursOuvres--;
}
}
}
return joursOuvres;
}
c1.set(begin.get(Calendar.YEAR),begin.get(Calendar.MONTH),begin.get(Calendar.DAY_OF_MONTH), begin.get(Calendar.HOUR_OF_DAY),begin.get(Calendar.MINUTE)); // 1999 jan 20
Calendar c2 = Calendar.getInstance();
c2.set(end.get(Calendar.YEAR),end.get(Calendar.MONTH),end.get(Calendar.DAY_OF_MONTH),end.get(Calendar.HOUR_OF_DAY),end.get(Calendar.MINUTE));
//System.out.println("Date is : " + sdft.format(c1.getTime()));
//c1.add(Calendar.MINUTE,20);
// System.out.println("Date + 20 Minutes is : " + sdft.format(c1.getTime()));
String c3 = null;
String c4 = c3=sdft.format(c1.getTime());
int days = c2.get(Calendar.DAY_OF_YEAR) - c1.get(Calendar.DAY_OF_YEAR);
int hours = c2.get(Calendar.HOUR_OF_DAY) - c1.get(Calendar.HOUR_OF_DAY);
int minutes = c2.get(Calendar.MINUTE) - c1.get(Calendar.MINUTE);
Date stop=new Date();
long days=(stop.getTime()-start.getTime())/1000/(24*60*60);
就可以了,你试试吧!================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。
★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。
★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!
★ 支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名 ●
可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
Http://www.ChinaOK.net/csdn/csdn.rar
Http://www.ChinaOK.net/csdn/csdn.exe [自解压]