【问题标题】:How set JCalendar with a specific date?如何将 JCalendar 设置为特定日期?
【发布时间】:2014-01-19 01:01:39
【问题描述】:

我想使用两个 JCalendar,一个使用 Calendar.getInstance() 接收实际日期,另一个接收相同日期但比第一个多一个月。例如:

日历 1 = 05/04/2014 Jcalendar2 = 05/05/2014

我不明白这是怎么做的,我试过这样......

    Calendar cal = Calendar.getInstance();        
    cal.set(Calendar.YEAR, Calendar.MONTH+1, Calendar.DAY_OF_MONTH);

但是将 JCalendar2 设置为 05/03/0001 这是 jcalendar 中的错误吗?

我怎样才能做到这一点?请帮忙

PD:对不起我的英语

【问题讨论】:

  • 请添加一些代码。

标签: java jcalendar


【解决方案1】:

根据 Calendar javadoc for set(int,int,int) 您设置为 2014 年 1 月 17 日

cal.set(2014, 0, 17);

Calendar.YEARCalendar.MONTHCalendar.DAY_OF_MONTH 是您可以在日历中处理的字段名称,而不是当前日期的实际值或占位符。

编辑,在您发表评论后 - 1 月是第 0 个月,抱歉打错了。

另外,如果您希望日历为“下个月”,请将其设置为今天,然后 add 一个月

cal.add(Calendar.MONTH, 1);

【讨论】:

  • 感谢回答,现在我明白了,因为日历设置在其他日期,但我想设置从今天开始的下个月的第二个日历,也就是说第一个带有日期的 jcalendar now and second with the date now but with the second month,如果是 1 月,则第二个 jcalendar 应该是 2 月。
  • with cal.add(Calendar.MONTH, 1);你解决了我的问题,非常感谢:D
【解决方案2】:

您想在这种情况下查找 java 文档,或者可能在 google 上查找示例。

Caledar set method

cal.set( Calendar.YEAR, 2014 )
cal.set( Calendar.MONTH, 5 )

等等

【讨论】:

  • 感谢您的回答,但是如果我可以将第二个 jcalendar 设置为下个月,我该怎么办?例如,第一个 jcalendar 现在接收日期,第二个 jcalendar 现在接收日期,但使用下个月,全部获取系统日期,不修改内部代码。
  • 我会使用一个变量并做一个 +1 或者你可以像这样使用 calendar.roll() tutorialspoint.com/java/util/calendar_roll.htm
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-06
  • 2010-10-07
  • 2011-06-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多