带有hh:mm格式的字符串

时间:2013-09-03 13:52:44

标签: java string methods time hour

我有两个hh:mm字符串,我想在它们之间进行比较。

我的意思是,我想添加或减去它们,进行操作。我有一个包含当前时间的字符串和另一个字符串,例如“15:00”。我想知道两个字符串之间有多少分钟,结果我可以通过减法来获取。 这可能吗?

3 个答案:

答案 0 :(得分:3)

您可以使用SimpleDateFormat对其进行解析,然后使用getTime()类中的Date方法获取以毫秒为单位的差异。

DateFormat f = new SimpleDateFormat("hh:mm");
Date d1 = f.parse(s1);
Date d2 = f.parse(s2);
long difference = d1.getTime() - d2.getTime(); // milliseconds

答案 1 :(得分:0)

这将让你开始..对以下两个字符串进行以下操作:然后进行必要的比较/加/减

String time1 = "15:00";
String time2 = "16:00";

DateFormat sdf = new SimpleDateFormat("hh:mm");
Date date1 = sdf.parse(time1);
Date date2 = sdf.parse(time2);

long milliSecondsDiff = date1.getTime() - date2.getTime(); //in milliseconds
int seconds = milliSecondsDiff/1000; //seconds
int minutes = seconds/60; //minutes

答案 2 :(得分:0)

您可以使用joda datetime:

public static void main(String[] args) {

    DateTimeFormatter formatter = DateTimeFormat.forPattern("HH:mm");
    DateTime first = formatter.parseDateTime("15:00");
    DateTime second = formatter.parseDateTime("15:49");

    Interval interval = new Interval(first, second);
    System.err.println(interval.toDuration().getStandardMinutes());
}

看看here

使用持续时间还会给你一些其他简洁的方法,比如getStandardSeconds(),在这种情况下会给你2940。