Win a copy of Mesos in Action this week in the Cloud/Virtualizaton forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Date difference

 
kri shan
Ranch Hand
Posts: 1467
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.SHORT);
String startdate = dateFormat.format(new Date());
String = enddate;
I want to find out the number of days between these two dates,but these two dates are in String format. How can i do that?
 
miguel lisboa
Ranch Hand
Posts: 1281
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
 
Jeff Jetton
Ranch Hand
Posts: 71
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by miguel lisboa:


Wouldn't that only work as long as the two dates are in the same year? If you set it up like this:

String sData1 = "31/12/2004";
String sData2 = "1/1/2005";

You'd get 364 instead of 1, wouldn't you?

One way to do it, as long as your dates are both after 1/1/1970, is to convert your strings to Date objects, using either DateFormat or SimpleDateFormat like Miguel did. Then use the getTime() method on those dates to get their values in milliseconds. Subtract the two, then divide the result by 86400000 (milliseconds in a day).

- Jeff
 
miguel lisboa
Ranch Hand
Posts: 1281
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Wouldn't that only work as long as the two dates are in the same year?

that's what i had in mind, but you'r absolutely right!
 
kri shan
Ranch Hand
Posts: 1467
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Try this code, i am not getting the exact difference....It shows difference between Apr 3 and Apr 4th value is 0. (instead of 1)
 
kri shan
Ranch Hand
Posts: 1467
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Any reply ??
 
Steven Bell
Ranch Hand
Posts: 1071
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Before you do the difference round each date to the beginning of the day. As long as you don't have to worry about getting dates from different time zones that should work.
 
kri shan
Ranch Hand
Posts: 1467
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Steven, How can i get the begining of the day??
 
kri shan
Ranch Hand
Posts: 1467
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I got the exact reult. I used getDateTimeInstance() instead of getDateInstance().
 
kri shan
Ranch Hand
Posts: 1467
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
One more thing, pass the Strign like this..
String yesdate = "3/3/05 0:0 AM, IST";
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic