读书人

java 日期 获取上一周、上二周的具体日

发布时间: 2012-12-21 12:03:49 作者: rapoo

java 日期 获取下一周、下二周的具体日期
JAVA获取今天、明天、后天的具体月、日,以当前系统日期为主:

public String returnDate(int count) {Calendar strDate = Calendar.getInstance();strDate.add(strDate.DATE, count);SimpleDateFormat sdf = new SimpleDateFormat("MM-dd");return sdf.format(strDate.getTime());}

如要获取明天是几月几号,则
returnDate(1);


获取下一周开始到结束具体的月日:
// 获得下周星期一的日期public String getNextMonday(int count) {Calendar strDate = Calendar.getInstance();       strDate.add(strDate.DATE,count);//System.out.println(strDate.getTime());GregorianCalendar currentDate = new GregorianCalendar();currentDate.set(strDate.get(Calendar.YEAR), strDate.get(Calendar.MONTH),strDate.get(Calendar.DATE));Date monday = currentDate.getTime();SimpleDateFormat df = new SimpleDateFormat("MMdd");String preMonday = df.format(monday);return preMonday;}// 获得下周星期日的日期public String getNextSunday(int count) {weeks++;GregorianCalendar currentDate = new GregorianCalendar();Calendar strDate = Calendar.getInstance();       strDate.add(strDate.DATE,count);System.out.println("=="+strDate.getTime());currentDate.set(strDate.get(Calendar.YEAR), strDate.get(Calendar.MONTH),strDate.get(Calendar.DATE));currentDate.add(GregorianCalendar.DATE, 6);Date monday = currentDate.getTime();SimpleDateFormat df = new SimpleDateFormat("MMdd");String preMonday = df.format(monday);return preMonday;}

如果今天是11.17那么下一周开始日期就是11.24结束日期就是11.30
调用方法:
//下周一的开始日期getNextMonday(7);//下周一的结束日期getNextSunday(7);

如果是下两周就是
//下两周的开始日期getNextMonday(14);//下两周的结束日期getNextSunday(14);


获取下一月的开始的具体月日:
// 获得下一月的日期public String getNextMonth() {Calendar strDate = Calendar.getInstance();       strDate.add(strDate.DATE,28);GregorianCalendar currentDate = new GregorianCalendar();currentDate.set(strDate.get(Calendar.YEAR), strDate.get(Calendar.MONTH),strDate.get(Calendar.DATE));Date monday = currentDate.getTime();SimpleDateFormat df = new SimpleDateFormat("MMdd");String preMonday = df.format(monday);Calendar cal = Calendar.getInstance();cal.set(currentDate.get(GregorianCalendar.YEAR), currentDate.get(GregorianCalendar.MONTH), currentDate.get(GregorianCalendar.DATE));cal.set(Calendar.MONTH, cal.get(Calendar.MONTH)+1);cal.roll(Calendar.DATE, -1);return preMonday+"-"+df.format(cal.getTime());}
1 楼 huangtian549 2012-07-11 如果今天是11.17那么下一周开始日期就是11.24结束日期就是11.30
调用方法:
Java代码
//下周一的开始日期
getNextMonday(7);
//下周一的结束日期
getNextSunday(7);

//下周一的开始日期
getNextMonday(7);
//下周一的结束日期
getNextSunday(7);

看看日历,你就知道,你的代码是有问题的,明显逻辑不对

读书人网 >编程

热点推荐