2011-04-12 135 views

回答

5

最低總是本月的第一個。最大值可以通過在日曆日字段中添加1到月份並減去1來確定。

+0

感謝您的幫助,我得到的解決方案如下: public void ddl_month_valueChange(ValueChangeEvent event){v_month = Integer.parseInt(event.getNewValue()。 toString()) - 1; java.util.Calendar c1 = java.util.Calendar.getInstance(); c1.set(2011,v_month,1); 日期d_set_att_from = c1.getTime(); cal_att_from_date.setValue(d_set_att_from); c1.add(java.util.Calendar.MONTH,1); c1.add(java.util.Calendar.DATE,-1); 日期d_set_att_to = c1.getTime(); cal_att_to_date.setValue(d_set_att_to); } – Annu 2011-04-12 05:49:02

+0

其中cal_att_from_date和cal_att_to_date是org.primefaces.component.calendar.Calendar – Annu 2011-04-12 05:49:39

+0

@Annu的對象,這個解決方案比調用一個方法更簡單嗎? – 2011-04-12 05:50:22

3

這可以做到這樣:

c = ... // get calendar for month you're interested in  
int numberOfDays = c.getActualMaximum(Calendar.DAY_OF_MONTH) 

你可以找到最小值和最大值的任何日期的部件以同樣的方式。

1

您是否嘗試過以下方法?

將日曆對象設置爲所需月份後,
calendar.getActualMaximum(Calendar.DATE);

至少,我想它總是第一個。

希望有所幫助。

1

最小日期始終爲1 和最大日期可以計算爲

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); 
     Calendar calendar = Calendar.getInstance(); 

     int year = 2010; 
     int month = Calendar.FEBRUARY; 
     int date = 1; 
     int maxDay =0; 

     calendar.set(year, month, date); 
     System.out.println("First Day: " + formatter.format(calendar.getTime())); 

     //Getting Maximum day for Given Month 
     maxDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH); 

     calendar.set(year, month, maxDay); 
     System.out.println("Last Day: " + formatter.format(calendar.getTime())); 

希望這將有助於

0

我得到了如下的解決方案,

public void ddl_month_valueChange(ValueChangeEvent event) { 
int v_month = Integer.parseInt(event.getNewValue().toString()) - 1; 
java.util.Calendar c1 = java.util.Calendar.getInstance(); 
c1.set(2011, v_month, 1); 
Date d_set_att_from = c1.getTime(); 
cal_att_from_date.setValue(d_set_att_from); 
c1.add(java.util.Calendar.MONTH, 1); 
c1.add(java.util.Calendar.DATE, -1); 
Date d_set_att_to = c1.getTime(); 
cal_att_to_date.setValue(d_set_att_to); } 
相關問題