Hello!Θέλω δυο μεθόδους
η μία θα επιστρέφει το εύρος των ημερομηνιών(String ή οτι άλλο) του προηγούμενου μήνα και η αλλη της προηγούμενης εβδομάδας.
'Εστω σήμερα 11/12/2007
String str=getPrevMonthRange(); //return 1/11/2007 -- 30/11/2007
String str=getPrevWeekRange(); //return 2/12/200 -- 8/11/2007
'Εχω κάνει κάποια test με GregorianCalendar αλλα δεν έχω βρει άκρη
,αν κάποιος έχει αντιμετωπίσει το θέμα ας απαντήσει.
java Date
Δοκίμασες με την class Date?
Τσέκαρε : http://java.sun.com/j2se/1.3/docs/api/j ... /Date.html
Τσέκαρε : http://java.sun.com/j2se/1.3/docs/api/j ... /Date.html
"Must float like lotus on river... and kill old lady!"
ok απλά για να κλείσει το θέμα δίνω κώδικα που φαίνεται να λύνει
το πρόβλημα
το πρόβλημα

Code: Select all
public static void printPrevMonthRange()
{
String DATE_FORMAT="dd-MM-yyyy";
SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
GregorianCalendar gc=new GregorianCalendar();
gc.add(GregorianCalendar.MONTH ,-1);
gc.set(GregorianCalendar.DAY_OF_MONTH,1);
Date t=gc.getTime();
gc.add(GregorianCalendar.DAY_OF_MONTH,(daysInMonth(gc)-1));
Date t2=gc.getTime();
String days=sdf.format(t) +" "+ sdf.format(t2);
System.out.println(days);
}
public static int daysInMonth(GregorianCalendar c) {
int [] daysInMonths = {31,28,31,30,31,30,31,31,30,31,30,31};
daysInMonths[1] += c.isLeapYear(c.get(GregorianCalendar.YEAR)) ? 1 : 0;
return daysInMonths[c.get(GregorianCalendar.MONTH)];
}
public static void printPrevWeekRange()
{
String DATE_FORMAT="dd-MM-yyyy";
SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
GregorianCalendar gc=new GregorianCalendar();
System.out.println(
"ROSE"+gc.get(Calendar.WEEK_OF_MONTH));
gc.add(GregorianCalendar.WEEK_OF_MONTH,-2);
gc.set(GregorianCalendar.DAY_OF_WEEK,GregorianCalendar.SUNDAY);
Date t=gc.getTime();
gc.add(GregorianCalendar.DAY_OF_WEEK,7);
Date t2=gc.getTime();
String days=sdf.format(t) +" "+ sdf.format(t2);
System.out.println(days);
}