Ganesh
Ganesh

Reputation: 662

calculating remaining days with daylight saving using JODA API

I have a requirement like calculating the days between two dates and calculating the future date by adding the weeks/months to the date. I used java.util.Calendar; and java.util.Date. these are not giving accurate results, it fails in daylight saving issue. so i decided to use JODA calendar API. I am very new to JODA API. Please anyone provide me sample code to calculate the below requirements.

1).noOfDays(String currDate, String tarDate) 2).addMonths(String date, int months) 3).addDays(String date, int days) 4).futureDate(String date,int week)

Thanks Ganesh

Upvotes: 1

Views: 695

Answers (1)

Ilya
Ilya

Reputation: 29673

0) To convert String to Date use
DateTimeFormatter
For example, if you date looks like "31/12/2012"

DateTimeFormatter dtf = DateTimeFormat.forPattern("dd/MM/yyyy");  
DateTime date = dtf.parseDateTime("31/12/2012");  

this class ISODateTimeFormat contains formatters for basic date formats.
1) To calculate days between two dates, use method Days#daysBetween
for examle

DateTime date1 = dtf.parseDateTime("31/12/2012");    
DateTime date2 = dtf.parseDateTime("15/11/2012");  
int daysbetween = Days.daysBetween(date1, date2);

2) To add months to date use DateTime#plusMonths()

DateTime newDate = dtf.parseDateTime("31/12/2012").plusMonths(5);  

3) To add days to date use method DateTime#plusDays()
4) To add weeks to date use method DateTime#plusWeeks()
Also you can use LocalDate class instead of DateTime if you are using date without time

Upvotes: 1

Related Questions