解析java中的否定时间字符串

时间:2015-03-05 01:37:17

标签: java parsing selenium time

我有一个selenium脚本来比较消极和正面时间-01:07和正格式+00:34+00:00是否为String格式。我想按照+或 - 符号在负时间或正时间解析这个时间,并想要比较其后是负面的还是之前

目前我正在这样做

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中解析负面时间。有人可以帮忙吗?

由于

1 个答案:

答案 0 :(得分:0)

我不相信你可以直接尝试,你必须手动解析字符串,然后执行一些操作。我建议使用JodaTime库来满足您的日期/时间操作需求,并提供标准日期类不具备的许多有用功能。

对于你来说,一个特别有用的功能是DateTime类,其中有方法可以添加和减去时间单位(年,分,秒等)。

http://joda-time.sourceforge.net/apidocs/org/joda/time/DateTime.html

在您的代码中,您可以查看字符串中的第一个字符,以确定是要添加还是减去。然后从该字符串中提取时间测量值并将其传递给DateTime类的适当加/减方法