我正在尝试从Caldroid日历中以dd / MM / yyyy格式获取所选日期,但是当我解析日期时,它将引发以下错误。

java.text.ParseException: Unparseable date: "Thu May 04 00:00:00 GMT 2017" (at offset 0)


下面是我的代码:

final SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
final CaldroidListener caldroidListener = new CaldroidListener() {
            @Override
            public void onSelectDate(Date date, View view) {
                try {
                    String dateParse = date.toString();
                    Log.d("Date before parse: ",date.toString());
                    sdf.parse(dateParse);
                    Log.d("Date after parse: ",dateParse);
                    eventDate.setText(dateParse);
                }catch(ParseException e){
                    e.printStackTrace();
                }
            }
        };

最佳答案

这完成了您希望代码执行的操作(不进行日志记录):

final SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
final CaldroidListener caldroidListener = new CaldroidListener() {
            @Override
            public void onSelectDate(Date date, View view) {
                eventDate.setText(sdf.format(date));

            }
        };


您使用SimpleDateFormat#formatDate中获取格式化的字符串。

10-07 17:20