将字符串解析为日期和格式

时间:2019-12-17 15:57:07

标签: android android-date

在片段中,我有一个DatePickerDialog.OnDateSetListener。如果选择日期,则以字符串形式将其发送给演示者。然后,我想在Presenter中将String解析为Date,然后在保存到数据库中之前更改Date的格式。

SavePresenter:

 @Override
public void addTaskClick(String text, String date, String time, boolean status) {
    SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy");
    Date updateDate = null;
    try {
        updateDate = format.parse(date);
    } catch (ParseException e) {
        e.printStackTrace();
    }
    Log.e("Save Presenter", updateDate.);
    realmService.addTask(text, updateDate, time, status, this);
}

这就是我现在拥有的:E / Save主持人:2019年12月17日星期二00:00:00 GMT + 01:00 2019 我想要这个:17 12 2019 或类似的东西。我需要将保存的日期与当前日期进行比较,以便按日期对任务进行排序。 我也尝试过DateFormat,但结果是相同的。

3 个答案:

答案 0 :(得分:2)

SimpleDateFormat("dd/MM/yy");不会去尝试,SimpleDateFormat("yyyy-MM-dd'T' HH:mm:ss.SSSZ");

enter image description here

您需要使用必需的格式指定日期

取自SimpleDateFormat

答案 1 :(得分:0)

您正在将日期解析为另一个Date。将其解析为String,然后检查日志。您应该会看到所需的输出。

答案 2 :(得分:0)

Log.e("Save Presenter", format.format(updateDate)); 将打印日期以所需格式登录。 这就是你想要的吗?