How to convert "Mon Jun 18 00:00:00 IST 2012" to 18/06/2012?

date, java

Solution

I hope following program will solve your problem

String dateStr = "Mon Jun 18 00:00:00 IST 2012";
DateFormat formatter = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy");
Date date = (Date)formatter.parse(dateStr);
System.out.println(date);        

Calendar cal = Calendar.getInstance();
cal.setTime(date);
String formatedDate = cal.get(Calendar.DATE) + "/" + (cal.get(Calendar.MONTH) + 1) + "/" +         cal.get(Calendar.YEAR);
System.out.println("formatedDate : " + formatedDate);    

Problem

I have a value like the following `Mon Jun 18 00:00:00 IST 2012` and I want to convert this to `18/06/2012` How to convert this? I tried this method ``` public String toDate(Date date) { SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); Date theDate = null; //String in = date + "/" + month + "/" + year; try { theDate = dateFormat.parse(date.toString()); System.out.println("Date parsed = " + dateFormat.format(theDate)); } catch (ParseException e) { e.printStackTrace(); } return dateFormat.format(theDate); } ``` but it throws following exception : `java.text.ParseException: Unparseable date: "Mon Jun 18 00:00:00 IST 2012"`

Original source

Related problems