用java解析负时间字符串

用java解析负时间字符串,java,parsing,selenium,time,Java,Parsing,Selenium,Time,我有一个selenium脚本来比较负时间和正时间,比如字符串格式的-01:07和正格式+00:34和+00:00。我想根据+或-符号在负时间或正时间中解析这个时间,并想比较它是在负时间之后还是之前 目前我正在这样做 Date late = (Date) format.parse("05:00"); Date ontime = (Date) format.parse("00:00"); Date early = (Date) format.parse("00:59"); SimpleDateFo

我有一个selenium脚本来比较负时间和正时间,比如字符串格式的
-01:07
和正格式
+00:34
+00:00
。我想根据+或-符号在负时间或正时间中解析这个时间,并想比较它是在负时间之后还是之前

目前我正在这样做

Date late = (Date) format.parse("05:00");
Date ontime = (Date) format.parse("00:00");
Date early = (Date) format.parse("00:59");

SimpleDateFormat format = new SimpleDateFormat("HH:mm");
String myTime = propertyConfig.getString("myTime");
//Here myTime = -00:47
org.junit.Assert.assertTrue(format.parse(myTime).after(early) && format.parse(myTime).before(late));
我不确定我们是否可以用java来解析负时间。有人能帮忙吗


谢谢

我不相信您可以直接这样做,因为您需要手动解析字符串,然后执行一些操作。我建议使用
JodaTime
库来满足日期/时间操作的需要,它提供了许多标准日期类没有的有用功能

DateTime
类中有一个特别有用的函数,其中有添加和减去时间单位(年、分、秒等)的方法


在您的代码中,您可以查看字符串中的第一个字符,以确定是否要进行加法或减法运算。然后从该字符串中提取时间度量值,并将其传递到
DateTime
类的适当的加法/减法方法中,谢谢您的建议。我会调查的。