从“月日,年”到“月/日/年”解析中日期格式

时间:2014-05-06 02:41:13

标签: android calendar date-format

您好我有以下代码

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();
            }
        });

}

现在,当我设置我的文字时,它会返回说," 2014年5月5日"我想让它回归" 2014年5月/ 05日"相反(我也希望选择将月份名称缩短为1月,2月,3月/ XX / XXXX)。

有人能指出我正确的方向吗?谢谢!

1 个答案:

答案 0 :(得分:1)

我为此创建了常用方法,可能对您有所帮助:

/**
 * 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;
}