创建具有特定日期和时间的日历

时间:2016-04-29 16:30:37

标签: java android android-studio calendar

我需要创建一个具有特定日期和时间的日历。

private void setNotification(String date, String time) {
    Log.i("log", "1");
    //Get date & time
    String[] dateArr = date.split(".");
    String[] timeArr = date.split(":");
    Log.i("log", "2");
    //Set calender to lesson's date & time
    Calendar cal = Calendar.getInstance();
    cal.set(Integer.valueOf(dateArr[2]), Integer.valueOf(dateArr[1]) - 1, Integer.valueOf(dateArr[0]), Integer.valueOf(timeArr[0]), Integer.valueOf(timeArr[1]));
    Log.i("log", "3");

    //Schedule notification
    scheduleNotification(CreateNewLesson.this, cal.getTimeInMillis() - Calendar.getInstance().getTimeInMillis(), Integer.valueOf(dateArr[0] + dateArr[1] + dateArr[2] + timeArr[0] + timeArr[1]));
}

日期字符串格式为DD.MM.YYYY,时间为HH:MM,当我调用该函数时,我可以看到" 2"记录而不是" 3"。

为什么会这样?

1 个答案:

答案 0 :(得分:0)

您可以使用SimpleDateFormat来解析日期和时间。像

这样的东西
DateFormat sdf = new SimpleDateFormat("dd.MM.yyyy HH:mm");
Calendar cal = Calendar.getInstance();
try {
    cal.setTime(sdf.parse(String.format("%s %s", date, time)));
    // use cal....
} catch (ParseException e) {
    e.printStackTrace();
}