2014-11-25 48 views
-1

我有一个应用程序,要求用户输入开始日期。然后,用户将浏览一系列5页并输入要导出到excel表格的数据,其中页面1位于第一个块上,并且日期2位于第二个块上,日期递增等。是否有任何可用于完成此功能的函数类型,或者我注定要使用if语句来正确地增加日期。我试图通过简单地在一系列的变量在Android的增量日期

int day = getIntent().getExtras().getInt("day"); 
    int year = getIntent().getExtras().getInt("year"); 
    String month = getIntent().getStringExtra("month"); 
    String dayofweek = getIntent().getStringExtra("dayofweek"); 

返回日期递增日期和我将输出在相应的单元格在Excel工作表中的变量。星期一只是变量的起始日期。周二将是+ 1日。星期三将是第一天,持续增加到第5天。我遇到的问题是,开始日被选为月份的最后一天,它将继续增加一天1月31日1月32日1月33日1月34日等等所以我必须考虑到月底,年底和闰年在2016年和2020年。在周末之上。例如,如果选择星期二,我想要在星期二显示开始日期,第四个日期将在星期五显示,然后在星期一再显示下一个正确日期。

所以我想这一切都将是有没有更好的方式来实现呢?

+0

可能重复[如何我可以在Java中增加一天的日期吗?](http://stackoverflow.com/questions/428918/how-can-i-increment-a-date-by-one-day-in-java) – 2014-11-25 06:52:09

回答

0

您必须使日期或日历对象增加....

1个月是2月份。二月三十日改为三月一日。你应该为0设置一个月。最好是使用日历定义的常量:

c1.set(2000, Calendar.JANUARY, 30); 

然后你可以增加它

c1.add(Calendar.DATE, 1); 
Date newDate = c1.getTime(); 

您将得到第二天的新的日期对象的:)