Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

java.text.ParseException: Unparseable date: convert mm/dd/yyyy string to a date

when i convert my string object in mm/dd/yyyy format to Date it gives me

java.text.ParseException: Unparseable date: "09/17/2014"

i am trying to do it like this :

String date= "09/17/2014";
DateFormat df = new SimpleDateFormat();
Date journeyDate= (java.sql.Date) df.parse(date);
like image 349
Subham Tripathi Avatar asked Sep 16 '14 15:09

Subham Tripathi


People also ask

How do you handle Unparseable date exception in Java?

You can try the below format: SimpleDateFormat sdf = new SimpleDateFormat("EE MMM dd HH:mm:ss z yyyy", Locale. ENGLISH);

What is Unparseable date error?

parseexception: unparseable date” error message, when you try to parse the date string into another desired format. Don't worry it's a very common error message that users generally faced while parsing a date in java using SimpleDateFormat class.

What is ParseException in Java?

public class ParseException extends Exception. Signals that an error has been reached unexpectedly while parsing. See Also: Exception , Format , FieldPosition , Serialized Form.

How do you format a date in Java?

Java SimpleDateFormat ExampleString pattern = "MM-dd-yyyy"; SimpleDateFormat simpleDateFormat = new SimpleDateFormat(pattern); String date = simpleDateFormat. format(new Date()); System. out. println(date);


2 Answers

There are several potential problems here:

  • You're not specifying a format
  • You're not specifying a locale
  • You're not specifying a time zone
  • You're trying to cast the return value (which will be a java.util.Date reference) to a java.sql.Date - that would fail

You want something like:

DateFormat df = new SimpleDateFormat("MM/dd/yyyy", Locale.US);
df.setTimeZone(...); // Whatever time zone you want to use
Date journeyDate = new java.sql.Date(df.parse(text).getTime());
like image 185
Jon Skeet Avatar answered Oct 15 '22 11:10

Jon Skeet


DateFormat df = new SimpleDateFormat("MM/dd/yyyy",Locale.ENGLISH);
Date journeyDate = df.parse(date); // gives you java.util.Date

If you want java.sql.Date then

java.sql.Date sqlDate = new java.sql.Date(journeyDate.getTime());
like image 35
SparkOn Avatar answered Oct 15 '22 10:10

SparkOn