java – 如何检查用户输入的字符串是否为mm中的mm / dd / yyyy格式?

我的应用程序中有一个文本编辑,用户可以使用mm / dd / yyyy格式输入日期.我必须检查输入的值是否为mm / dd / yyyy格式.如果不是,我必须显示编辑文本错误.

我该怎么做呢?

private final DatePickerDialog.OnDateSetListener datePickerListener = new DatePickerDialog.OnDateSetListener() {
    @SuppressLint("SetTextI18n")
    public void onDateSet(DatePicker view, int selectedYear,
                          int selectedMonth, int selectedDay) {
        m_Dob.setText((selectedMonth + 1) + "/" + selectedDay + "/" + selectedYear);
    }
};
m_dateBtn = (AppCompatImageButton) findViewById(R.id.date_Btn);
m_dateBtn.setOnClickListener(this);
Calendar cal = Calendar.getInstance();
day = cal.get(Calendar.DAY_OF_MONTH);
month = cal.get(Calendar.MONTH);
year = cal.get(Calendar.YEAR);

protected Dialog onCreateDialog(int id) {
    return new DatePickerDialog(this, datePickerListener, year, month, day);
}

最佳答案 您可以像这样使用DateFormat:

public void isCorrectDateFormat(String value, String format)
    try {
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        date = sdf.parse(value);
        return value.equals(sdf.format(date)));
    } catch (ParseException ex) {
        ex.printStackTrace();
        return false;
    }
}
点赞