android里 怎么计算日期差

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android里 怎么计算日期差相关的知识,希望对你有一定的参考价值。

android 里,datepicker()获取一个用户选定的日期year,month,一个已知给定的日期yyyy-mm,怎么计算它们的相差天数?谢谢了。

计算天数应该还需要day吧?还是说你需要两个月份之间的天数?
如果是前者,有很多现成的代码可以参考。如果是后者,那就取前面月份的最后一天和后面月份的第一天,然后再用相同的方式计算天数。

计算天数最简单的就是去毫秒减一下除以1000*3600*24追问

就是毫秒那边转不过来,两个日期差就是毫秒差,但是一个datepicker()获得的日期,一个是给定的日期,怎么转换格式成同一的可以相减的呢?我就是这步有点转不过来。xx

追答

你拿到的应该是字符串,把字符串转成Date就行了

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date0 = sdf.parse(sdf.format("2014-01-23"));
Date date1 = sdf.parse(sdf.format("2014-04-05"));
Calendar cal0 = Calendar.getInstance();
cal0.setTime(date0);
Calendar cal1 = Calendar.getInstance();
cal1.setTime(date1);
long time0 = cal0.getTimeInMillis();
long time1 = cal1.getTimeInMillis();

time1 - time0就是相差的毫秒

参考技术A 可以从小的日期开始加,直到等于另一个日期,就能计算出相差多少天了!但是如果有库函数可以调用就更方便了。 参考技术B LocalDate d1 = new LocalDate(calendar1.getTimeInMillis());
LocalDate d2 = new LocalDate(calendar2.getTimeInMillis());
int days = Days.daysBetween(d1, d2).getDays();

以上是关于android里 怎么计算日期差的主要内容,如果未能解决你的问题,请参考以下文章

js怎么计算2个日期之间差多少天

java中计算两个日期之间差的天数

如何用SQL计算access2007数据表两个日期差?

java中计算两个日期之间差的天数

代码日期计算为何会差一个月那,求高手指点

用java怎么计算两个日期之间年数,季度数,月数