vijay
vijay

Reputation: 1139

String to local date error

I am trying to convert from string to localdate(JODA TIME) but its giving me error

String theDate = w.getPSDate();  == 6/03/2013
LocalDate ld = new LocalDate(theDate);
System.out.println(ld);

for some reason, I have to use string instead of date. I want to print the date as (06/03/2013). what is the error in the code?

error

Exception in thread "main" java.lang.IllegalArgumentException: Invalid format: "06/03/2013" is malformed at "/03/2013"
at org.joda.time.format.DateTimeFormatter.parseMillis(DateTimeFormatter.java:747)
at org.joda.time.convert.StringConverter.getPartialValues(StringConverter.java:87)
at org.joda.time.LocalDate.<init>(LocalDate.java:406)
at org.joda.time.LocalDate.<init>(LocalDate.java:354)
at Date.GetDate.main(GetDate.java:94)

Java Result: 1

Upvotes: 5

Views: 1589

Answers (1)

Jon Skeet
Jon Skeet

Reputation: 1503869

Use a DateTimeFormatter instead:

// Are you sure it's 6/03/2013 rather than 06/03/2013? dd would be nicer...
DateTimeFormatter formatter = DateTimeFormat.forPattern("d/MM/yyyy");
LocalDate date = formatter.parseLocalDate(text);

Upvotes: 7

Related Questions