Convert String to Date exception

I know this question has been asked a lot but I can't find the solution to mine. I have an application where I'm converting a string to a date and I always catch the exception. The string that I want to convert is in the format: Mon, Aug 4, 2014. Here is my code:

try {
    Date d = new SimpleDateFormat("EEE, MM d, yyyy").parse(theStringToConvert);
    Log.i("MyApp", "Date: " + d);
}
catch (ParseException e){
    Log.i("EXCEPTION", "Cannot parse string");
}
Jon Skeet
people
quotationmark

"MM" is "two digit month". You want "MMM" for "abbreviated name of month". Additionally, you should specify the locale so that it doesn't try to parse it in the user's locale - assuming it really will always be English:

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

public class Test {
    public static void main(String[] args) throws Exception {
        String text = "Mon, Aug 4, 2014";
        DateFormat format = new SimpleDateFormat("EEE, MMM d, yyy",
                                                  Locale.US);
        Date date = format.parse(text);
        System.out.println(date);
    }
}

people

See more on this question at Stackoverflow