如何将字符串HH:MM转换为Joda持续时间?

时间:2011-01-06 20:52:28

标签: java jodatime

我在表单中有一个字段来说明事件的持续时间。 比如说,比赛持续15分钟。所以该字段将具有以下值:00:15 如果是持续1小时:01:00等等。

如何使用字符串“HH:MM”创建Joda-Time Duration对象?

查看Joda-Time主页,它提到可以分别使用ConverterManager和DurationConverter从指定对象创建Duration对象。

我的问题是,如何实现上述接口,以便通过传递“4:30”参数来创建Duration对象?

提前致谢,

卢卡斯

1 个答案:

答案 0 :(得分:16)

我认为更好的方法是使用PeriodFormatterBuilder这样:

 PeriodFormatter hoursMinutes= new PeriodFormatterBuilder()
     .appendHours()
     .appendSeparator(":")
     .appendMinutes()
     .toFormatter();

然后,您可以将字符串解析为Period个对象并在其上调用toStandardDuration() - 或继续使用Period,因为这似乎更符合您的用例。