permaculture playing cards*
The moose likes Java in General and the fly likes date manipulation Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Java » Java in General
Bookmark "date manipulation" Watch "date manipulation" New topic
Author

date manipulation

Pingili Vishwanath
Greenhorn

Joined: Dec 30, 2006
Posts: 7
Hi,

I have date like 09/25/2007. I need to advance it by 7 dyas. So, it should be 10/02/2007. But I am getting 09/32/2007.

Here is the code:

import java.util.*;
import java.text.*;

public class month {

public static void main(String[] args) throws Exception {

DateFormat sdf = new SimpleDateFormat("mm/DD/yyyy");

Date date = null;
date = sdf.parse("09/25/2007");

Calendar cal = Calendar.getInstance();
cal.setTime(date);

String strDate = sdf.format(cal.getTime());
System.out.println(strDate);

// add 7 days
cal.add(Calendar.DAY_OF_MONTH, 7);

strDate = sdf.format(cal.getTime());
System.out.println(strDate);
}
}

Can anyone give the solution please?
Thanks.
Freddy Wong
Ranch Hand

Joined: Sep 11, 2006
Posts: 959

Your SimpleDateFormat pattern is wrong.
m = minute in hour
D = day in year
Check the API for more information.

To get what you want, you need to change it to MM/dd/yyyy.


SCJP 5.0, SCWCD 1.4, SCBCD 1.3, SCDJWS 1.4
My Blog
Pingili Vishwanath
Greenhorn

Joined: Dec 30, 2006
Posts: 7
Hi Freddy, Thanks. It worked.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: date manipulation
 
Similar Threads
Date, DateFormat, Calendar - resource request
DateFormat.format unexpected side effect
dates and JDBC
Calendar Object to String
Date Generation