String birthday ="2000-02-29"
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd")
Calendar cal = Calendar.getInstance()
int yearNow = cal.get(Calendar.YEAR)// 年
cal.setTime(formatter.parse(birthday))
int birthyear=cal.get(Calendar.YEAR)
while(birthyear<yearNow){
cal.set(Calendar.YEAR,cal.get(Calendar.YEAR)+1)
birthyear=cal.get(Calendar.YEAR)
}
Date ed=new Date()
Date sd=cal.getTime()
long days=0
if((ed.getTime() - sd.getTime()) / (3600 * 24 * 1000)>0 ){
days=(ed.getTime() - sd.getTime()) / (3600 * 24 * 1000)
System.out.println("距离你生日还有" + days + "天")
}else{
cal.set(Calendar.YEAR,cal.get(Calendar.YEAR)+1)
sd=cal.getTime()
days=(ed.getTime() - sd.getTime()) / (3600 * 24 * 1000)
System.out.println("距离你生日还有" + days + "天")
}
}
这个题问题一般要提完整,别人才能回答,这里不知道你的表结构就很难给你弄。默认简单的在同一张表给你弄,select * from 表名 where 存储生日日期字段 = 你的生日。 这里存在数据库里的一般会是时间戳,你查询时把你生日转变成时间戳差就可以了欢迎分享,转载请注明来源:内存溢出
评论列表(0条)