-2

How can i convert "15 July 2013" to " 2013-07-15" in android using SimpleDateFormat outputFormat= new SimpleDateFormat("yyyy-MM-dd");

UPDATE

String dates ="15 July 2013";
    try {
            String date="15-July-2013";
            SimpleDateFormat simpledateFormat = new SimpleDateFormat("dd-MMMM-yyyy");
            Date formattedDate=simpledateFormat.parse(date);
            SimpleDateFormat  newDate =new SimpleDateFormat("yyyy-MM-dd");
            String formatDate=newDate.format(formattedDate);
            System.out.println("formatDate: "+formatDate);
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

ERROR LOG : at java.text.DateFormat.parse(DateFormat.java:626)

07-15 09:46:24.170: W/System.err(23522): at java.text.DateFormat.parse(DateFormat.java:626)
07-15 09:46:24.170: W/System.err(23522): at .CompteCompagnon.onCreate(CompteCompagnon.java:87)
07-15 09:46:24.170: W/System.err(23522): at android.app.Activity.performCreate(Activity.java:5206)
07-15 09:46:24.170: W/System.err(23522): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1083)
07-15 09:46:24.170: W/System.err(23522): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2064)
07-15 09:46:24.170: W/System.err(23522): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2125)
07-15 09:46:24.170: W/System.err(23522): at android.app.ActivityThread.access$600(ActivityThread.java:140)
07-15 09:46:24.170: W/System.err(23522): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1227)
07-15 09:46:24.170: W/System.err(23522): at android.os.Handler.dispatchMessage(Handler.java:99)
07-15 09:46:24.170: W/System.err(23522): at android.os.Looper.loop(Looper.java:137)
07-15 09:46:24.170: W/System.err(23522): at android.app.ActivityThread.main(ActivityThread.java:4898)
07-15 09:46:24.170: W/System.err(23522): at java.lang.reflect.Method.invokeNative(Native Method)
07-15 09:46:24.170: W/System.err(23522): at java.lang.reflect.Method.invoke(Method.java:511)
07-15 09:46:24.170: W/System.err(23522): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
07-15 09:46:24.170: W/System.err(23522): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
07-15 09:46:24.170: W/System.err(23522): at dalvik.system.NativeStart.main(Native Method)
Dimitri
  • 677
  • 3
  • 19
  • 46

3 Answers3

2

This may help you:

Use SimpleDateFormat:

DateFormat originalFormat = new SimpleDateFormat("dd MMMM yyyy");
DateFormat targetFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date = originalFormat.parse(Your Date string);
String formattedDate = targetFormat.format(date);

Also note that parse takes a String, not a Date object, which is already parsed.

Edit:

Change this line: SimpleDateFormat simpledateFormat = new SimpleDateFormat("dd-MMM-yyyy");

to

SimpleDateFormat simpledateFormat = new SimpleDateFormat("dd-MMMM-yyyy");

Bhavin Nattar
  • 3,189
  • 2
  • 22
  • 30
2

Do something like this

SimpleDateFormat outputFormat= new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat formatInputDate = new SimpleDateFormat("dd MMMM yyyy");
Date date=formatInputDate.parse(inputString);
String output=outputFormat.format(date);
Naresh
  • 3,174
  • 1
  • 17
  • 22
1

You specified everything just add few lines.

   String strDate="15-July-2013";
    SimpleDateFormat simpledateFormat = new SimpleDateFormat("dd-MMM-yyyy");
    try {
        Date formattedDate=simpledateFormat.parse(strDate);
        simpledateFormat=new SimpleDateFormat("yyyy-MM-dd");
        String changedDate=simpledateFormat.format(formattedDate);
        System.out.println(changedDate);
    }catch (Exception e) {
        // TODO: handle exception
        e.printStackTrace();
    }
Srikanth Roopa
  • 1,782
  • 2
  • 13
  • 19