Unparseable Date: Resolve the Date Parse Exception in Java
When attempting to parse a date string, you may encounter an "Unparseable date" exception, despite what appears to be a valid date format. This issue often arises when the default locale on your computer differs from the locale used in the date format string.
In your specific case, the following code demonstrates the issue:
import java.util.Date; String strDate = "Wed, 09 Feb 2011 12:34:27"; Date date; SimpleDateFormat FORMATTER = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss"); try { date = FORMATTER.parse(strDate.trim()); System.out.println(date); } catch (ParseException e) { e.printStackTrace(); }
Running the above code results in the following exception:
java.text.ParseException: Unparseable date: "Wed, 09 Feb 2011 12:34:27" at java.text.DateFormat.parse(DateFormat.java:337)
To resolve this issue, you need to specify the appropriate locale when creating the SimpleDateFormat object. In this case, you should use Locale.ENGLISH as follows:
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss", Locale.ENGLISH);
By specifying the English locale, you ensure that the date pattern is interpreted according to the English language conventions, regardless of the default locale on your system. This will allow the code to parse the date string successfully.
The above is the detailed content of How to Resolve 'Unparseable Date' Exceptions in Java?. For more information, please follow other related articles on the PHP Chinese website!