Question

Hi I have the following code

final Calendar myCalendar = Calendar.getInstance();

    final DatePickerDialog.OnDateSetListener date = new DatePickerDialog.OnDateSetListener() {

        @Override
        public void onDateSet(DatePicker view, int year, int month, int day) {
            // TODO Auto-generated method stub
            myCalendar.set(Calendar.YEAR, year);
            myCalendar.set(Calendar.MONTH, month);
            myCalendar.set(Calendar.DAY_OF_MONTH, day);
            updateLabel();
        }

        private void updateLabel() {

            java.text.DateFormat df = java.text.DateFormat.getDateInstance(java.text.DateFormat.MEDIUM, Locale.US);

            calendarText.setText(df.format(myCalendar.getTime()));
        }

    };

       calendarText.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                new DatePickerDialog(MainActivity.this, date, myCalendar
                        .get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
                        myCalendar.get(Calendar.DAY_OF_MONTH)).show();
            }
        });

}

Right now, when I set my text, it returns say, "May 5, 2014" I want it to return "May/05/2014" instead (also I would want the option to may the month names into short like Jan, Feb, Mar/XX/XXXX).

Can anyone point me in the right direction? Thanks!

Was it helpful?

Solution

I have created common method for that, may helpful to you:

/**
 * Convert Date from-to Format
 * @param date
 * @return
 */
public static String convertDate(String date, String fromFormat, String toFormat) {
// TODO Auto-generated method stub

try {
    return new SimpleDateFormat(toFormat).format(new SimpleDateFormat(fromFormat).parse(date));
} catch (Exception e) {
    Log.e(TAG, "Date Converting " + date + " : "+ e.getLocalizedMessage());
}
return null;
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top