KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm working on taking a date value (createWhen) from Active Directory, and translating it into a Java date, for the purposes of getting a list of accounts created between two dates. Everything is working fine, save for one method: the method where I go from the AD Date to the Java date. The method looks like this: private Date getParsedDate(String givenString) { System.out.println("Value from AD is: " + givenString); Date parsedDate = null; String formattedString = this.formatDateString(givenString); System.out.println("Formatted String is: " + formattedString); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/DD"); try { parsedDate = sdf.parse(formattedString); System.out.println("Final date string is: " + parsedDate.toString()); } catch (ParseException ex) { ex.printStackTrace(); } return parsedDate; } And, for a single piece of arbitrary data from AD: Value from AD is: 20050912190509.0Z Formatted String is: 2005/09/12 Final date string is: Wed Jan 12 00:00:00 EST 2005 Obviously, it's picking up the day and year correctly (and if I choose to include hours/minutes/seconds it includes those correctly as well), but every single date is being placed in January for some reason. Now, I'm sure that my error is a pretty simple one, but I've rechecked my formatting about ten times, and I'm at the point where I just can't see it any more. Can a second pair of eyes hopefully look over my code and point out where I'm going wrong to get the month so grossly incorrect? Thanks.
Tags (comma-separated)
Save Edits
Cancel