jodatime -> 解析错误 utc 日期时间字符串
jodatime -> parse error utc datetime string
目前,我正在尝试使用 jodatime 库解析 DateTime。
String stringLiteral = "09/05/2016 12:25:39"
try {
DateTime utcDateTime = new DateTime(stringLiteral, DateTimeZone.UTC);
this.expressionType = ExpressionEnumType.date;
this.expressions.add(ConstantImpl.create(utcDateTime.toDate()));
} catch (IllegalArgumentException e)
{
this.expressionType = ExpressionEnumType.string;
this.expressions.add(ConstantImpl.create(stringLiteral));
}
然而,jodatime 告诉我:
java.lang.IllegalArgumentException: Invalid format: "09/05/2016 12:25:39" is malformed at "/05/2016 12:25:39"
DateTime
的构造函数无法将任意格式的字符串解析为 DateTime
对象。如果你想以这种方式使用构造函数,字符串必须是 ISO 8601 格式之一,而你的字符串 "09/05/2016 12:25:39"
不是。
用另一种方法解析日期,这里可以自己指定格式。例如:
DateTimeFormatter formatter = DateTimeFormat.forPattern("dd/MM/yyyy HH:mm:ss")
.withZoneUTC();
DateTime utcDateTime = DateTime.parse(stringLiteral, formatter);
目前,我正在尝试使用 jodatime 库解析 DateTime。
String stringLiteral = "09/05/2016 12:25:39"
try {
DateTime utcDateTime = new DateTime(stringLiteral, DateTimeZone.UTC);
this.expressionType = ExpressionEnumType.date;
this.expressions.add(ConstantImpl.create(utcDateTime.toDate()));
} catch (IllegalArgumentException e)
{
this.expressionType = ExpressionEnumType.string;
this.expressions.add(ConstantImpl.create(stringLiteral));
}
然而,jodatime 告诉我:
java.lang.IllegalArgumentException: Invalid format: "09/05/2016 12:25:39" is malformed at "/05/2016 12:25:39"
DateTime
的构造函数无法将任意格式的字符串解析为 DateTime
对象。如果你想以这种方式使用构造函数,字符串必须是 ISO 8601 格式之一,而你的字符串 "09/05/2016 12:25:39"
不是。
用另一种方法解析日期,这里可以自己指定格式。例如:
DateTimeFormatter formatter = DateTimeFormat.forPattern("dd/MM/yyyy HH:mm:ss")
.withZoneUTC();
DateTime utcDateTime = DateTime.parse(stringLiteral, formatter);