在java中将日期设置为日历实例

时间:2014-05-23 06:45:40

标签: java calendar

我正在使用日历功能将自定义日期设置为日历。我在下面设置它,但它给出了不同的日期。

int day = Integer.parseInt(String.valueOf(dOutput.getDwDay()));
int monthday = Integer.parseInt(String.valueOf(dOutput.getDwMonth()));
int monthyearday = Integer.parseInt(String.valueOf(dOutput.getDwYear()));

  System.out.println("day = " + day);
  System.out.println("monthday = " + monthday);
  System.out.println("monthyearday = " + monthyearday);
  System.out.println("After setting Time:  " + calendar.getTime());

  calendar.set(Calendar.DATE, day);
  calendar.set(Calendar.DAY_OF_MONTH, monthday);
  calendar.set(Calendar.DAY_OF_YEAR, monthyearday);

  int frommonth = calendar.get(Calendar.MONTH);
  int year = calendar.get(Calendar.YEAR);
  System.out.println("year = " + year);
  System.out.println("frommonth = " + frommonth);

输出 我在给这个

day = 23
monthday = 5
monthyearday = 2014

但它产生的是这样的:

year = 2019
frommonth = 6

1 个答案:

答案 0 :(得分:5)

您在日历上设置了错误的字段。设置如下字段:

calendar.set(Calendar.DAY_OF_MONTH, day); // day
calendar.set(Calendar.MONTH, monthday); // month
calendar.set(Calendar.YEAR, monthyearday); // year