使用 Java 中的当前年份从组合框中获取所选月份的开始日期和结束日期
Get the Start date and End date of a Selected month from a Combo box using current year in Java 7
我想从组合框中获取一个月的开始日期和结束日期 select。
组合框充满月份,如一月、二月..... 当我在组合框中 select 一个月时,我想获得该月与当年的开始和结束日期。
但在下面的代码中,年份是在文本框中指定的。但我想获得当年。不是来自文本框。
请帮我解决这个问题。
感谢提前。
这是我试过的代码
cal.set(Calendar.MONTH, cmbMonth.getSelectionModel().getSelectedIndex());
int yearpart = Integer.parseInt(txtYear.getText());
int monthPart = cmbMonth.getSelectionModel().getSelectedIndex();
int dateDay = 1;
cal.set(yearpart, monthPart, dateDay);
int numOfDaysInMonth = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println("Number of Days: " + numOfDaysInMonth);
System.out.println("First Day of month: " + cal.getTime());
cal.add(Calendar.DAY_OF_MONTH, numOfDaysInMonth-1);
System.out.println("Last Day of month: " + cal.getTime());
当我在组合框中 select 月二月。我想要这样的输出
First Day of month: 2019-02-1
Last Day of month: 2019-02-28
现在我得到了这种输出
First Day of month: Fri Feb 01 11:32:47 IST 2019
Last Day of month: Thur Feb 28 11:32:47 IST 2019
您可以使用 YearMonth
:
int year = LocalDate.now().getYear();
String month = "January";
YearMonth yearMonth = YearMonth.of(year, Month.valueOf(month.toUpperCase()));
System.out.println(LocalDate.of(yearMonth.getYear(), yearMonth.getMonth(), 1));
System.out.println(yearMonth.atEndOfMonth());
我想从组合框中获取一个月的开始日期和结束日期 select。 组合框充满月份,如一月、二月..... 当我在组合框中 select 一个月时,我想获得该月与当年的开始和结束日期。 但在下面的代码中,年份是在文本框中指定的。但我想获得当年。不是来自文本框。 请帮我解决这个问题。 感谢提前。
这是我试过的代码
cal.set(Calendar.MONTH, cmbMonth.getSelectionModel().getSelectedIndex());
int yearpart = Integer.parseInt(txtYear.getText());
int monthPart = cmbMonth.getSelectionModel().getSelectedIndex();
int dateDay = 1;
cal.set(yearpart, monthPart, dateDay);
int numOfDaysInMonth = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println("Number of Days: " + numOfDaysInMonth);
System.out.println("First Day of month: " + cal.getTime());
cal.add(Calendar.DAY_OF_MONTH, numOfDaysInMonth-1);
System.out.println("Last Day of month: " + cal.getTime());
当我在组合框中 select 月二月。我想要这样的输出
First Day of month: 2019-02-1
Last Day of month: 2019-02-28
现在我得到了这种输出
First Day of month: Fri Feb 01 11:32:47 IST 2019
Last Day of month: Thur Feb 28 11:32:47 IST 2019
您可以使用 YearMonth
:
int year = LocalDate.now().getYear();
String month = "January";
YearMonth yearMonth = YearMonth.of(year, Month.valueOf(month.toUpperCase()));
System.out.println(LocalDate.of(yearMonth.getYear(), yearMonth.getMonth(), 1));
System.out.println(yearMonth.atEndOfMonth());