是否可以创建一个DateTimeParser
这将解析:
- 给定时间的日期
- 没有时间的日期(假设时间是一天的开始)
- 没有日期的时间(假设日期是今天)
或者我是否需要三个单独的解析器,并尝试用每个解析器解析字符串?
换句话说,是否可以在解析器中定义可选字段?
org.joda.time.format.ISODateTimeFormat
有一个静态方法dateOptionalTimeParser()
使用下面的代码,基于DateTimeFomatterBuilder
类,其中有一个appendOptional
方法 - 您可能能够根据您的要求调整该方法...链接:http://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormatterBuilder.html http://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormatterBuilder.html
public static DateTimeFormatter dateOptionalTimeParser() {
if (dotp == null) {
DateTimeParser timeOrOffset = new DateTimeFormatterBuilder()
.appendLiteral('T')
.appendOptional(timeElementParser().getParser())
.appendOptional(offsetElement().getParser())
.toParser();
dotp = new DateTimeFormatterBuilder()
.append(dateElementParser())
.appendOptional(timeOrOffset)
.toFormatter();
}
return dotp;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)