我有一个类似于以下内容的日期字符串:
“ 2014-04-10T00:00:00.000”
所以我需要将其转换为Joda-Time DateTime
对象。
这是我的代码:
String datePattern = "yyyy-MM-dd'T'HH:mm:ss.SSS";
DateTimeFormatter dateFormatter = DateTimeFormat.forPattern(datePattern);
currentCard.setStartDate("2014-04-10T00:00:00.000");
currentCard.setEndDate("2015-04-10T00:00:00.000");
DateTime startDateTime = dateFormatter.parseDateTime(currentCard.getStartDate());
DateTime endDateTime = dateFormatter.parseDateTime(currentCard.getEndDate());
if (startDateTime.isBeforeNow() && endDateTime.isAfterNow()) {
currentCard.setActive(true);
} else {
currentCard.setActive(false);
}
它告诉我
string is too short
最佳答案
我相信日期模式的正确语法是"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
。这样,Z
就会被字面地使用。
关于java - 将日期字符串转换为Joda-Time中的datetime对象?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23494200/