# Find days between two dates span different years

**URL:** <https://www.ruby-forum.com/t/find-days-between-two-dates-span-different-years/184504>\
**Category:** Ruby\
**Created:** [March 3, 2010, 4:28pm UTC](https://www.ruby-forum.com/t/find-days-between-two-dates-span-different-years/184504 "2010-03-03T16:28:09Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![alex-osu3](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/13edae/32.png) [@alex-osu3](https://www.ruby-forum.com/u/alex-osu3)\
**Post date:** [March 3, 2010, 4:28pm UTC](https://www.ruby-forum.com/t/find-days-between-two-dates-span-different-years/184504/1 "2010-03-03T16:28:09Z")

</div>

Hi all,

Which method is used to calculate the days between two dates spanning  
different years?

Thanks,

Li

---

<div class="post-metadata">

**Author:** ![alex-osu3](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/13edae/32.png) [@alex-osu3](https://www.ruby-forum.com/u/alex-osu3)\
**Post date:** [March 3, 2010, 5:15pm UTC](https://www.ruby-forum.com/t/find-days-between-two-dates-span-different-years/184504/2 "2010-03-03T17:15:54Z")

</div>

Li Chen [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Which method is used to calculate the days between two dates spanning  
> different years?

Something like this:

> > require ‘date’  
> > =\> false  
> > d1 = Date.new(2009, 8, 12)  
> > =\> #\<Date: 4910111/2,0,2299161\>  
> > d2 = Date.new(2010, 3, 3)  
> > =\> #\<Date: 4910517/2,0,2299161\>  
> > d2 - d1  
> > =\> Rational203, 1  
> > (d2 - d1).to\_i  
> > =\> 203

Regards,  
Jan F.

---

<div class="post-metadata">

**Author:** ![alex-osu3](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/13edae/32.png) [@alex-osu3](https://www.ruby-forum.com/u/alex-osu3)\
**Post date:** [March 4, 2010, 3:11am UTC](https://www.ruby-forum.com/t/find-days-between-two-dates-span-different-years/184504/3 "2010-03-04T03:11:54Z")

</div>

Jan F. wrote:

> > > require ‘date’  
> > > =\> false
> > 
> > > d1 = Date.new(2009, 8, 12)  
> > > =\> #\<Date: 4910111/2,0,2299161\>
> > 
> > > d2 = Date.new(2010, 3, 3)  
> > > =\> #\<Date: 4910517/2,0,2299161\>
> > 
> > > d2 - d1  
> > > =\> Rational203, 1
> > 
> > > (d2 - d1).to\_i  
> > > =\> 203
> 
> Regards,  
> Jan F.

Thank you so much,

Li
