java 从jdatechooser中选择日期并在文本字段中自动显示年龄

wbgh16ku  于 2023-02-18  发布在  Java
关注(0)|答案(2)|浏览(106)

我试图从Jdatechooser获得选定的日期,并在文本字段中显示与日期对应的年龄,我看到所有的线程讨论这个问题,但它不工作的me.here是我的代码:

private void datenaiss_choozPropertyChange(java.beans.PropertyChangeEvent evt) {                                               
    Date date = (Date) datenaiss_chooz.getDate(); 
LocalDate ld = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
Period p =Period.between(ld, LocalDate.now());
age.setText(p);

}
6ie5vjzr

6ie5vjzr1#

使用joda-time解决您的问题:

DateTime birthDate = new DateTime(1990, 1, 15, 0, 0, 0, 0);
DateTime now = new DateTime();
Period period = new Period(birthDate, now);
int years = period.getYears();
System.out.println(years);

这将给予你你所需要的差异!

huus2vyu

huus2vyu2#

经过长时间的努力,我终于找到了解决方案,谢谢大家的帮助。2下面是我的代码,它运行得非常完美。

DateTime start = new DateTime(datenaiss_chooz.getDate());
Years h = Years.yearsBetween(start, new DateTime()); 
StringBuilder b = new StringBuilder();
b.append(h.getYears());
String str = b.toString();
if ( h.getYears()==0)
age.setText(""); 
else
age.setText(str+" "+"ans");

相关问题