无法将15分钟添加到00:00

时间:2011-08-19 11:40:03

标签: java android

我已经编写了一个以24小时格式添加时间的功能,如下所示

for (int i = 0; i < cursor.getCount(); i++) {

        String RevisedTime="00:00";     



        // get hour and minute from time string
        StringTokenizer st1 = new StringTokenizer(RevisedTime, ":");
        int j = 0;
        int[] val = new int[st1.countTokens()];
        // iterate through tokens
        while (st1.hasMoreTokens()) {
            val[j] = Integer.parseInt(st1.nextToken());
            j++;
        }

        // call time add method with current hour, minute and minutesToAdd,
        // return added time as a string
        String date = addTime(val[0], val[1], 15);



    }

public String addTime(int hour, int minute, int minutesToAdd) {
        Calendar calendar = new GregorianCalendar(1990, 1, 1, hour, minute);
        calendar.add(Calendar.MINUTE, minutesToAdd);
        SimpleDateFormat sdf = new SimpleDateFormat("kk:mm");
        String date = sdf.format(calendar.getTime());
        return date;
    }

问题是,在00:00加入15分钟后,我得到的输出为12.15 ....

我需要在00:15得到它......请求帮助我......

2 个答案:

答案 0 :(得分:5)

您必须使用0-23小时格式,而不是1-24。

而不是SimpleDateFormat sdf = new SimpleDateFormat("kk:mm"); 使用SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");

答案 1 :(得分:1)

你只需改变一下就可以了。

替换

SimpleDateFormat sdf = new SimpleDateFormat("kk:mm");

通过

SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");