我想使用DateUtils.parseDate
解析具有不同潜在格式的日期。它似乎使用第一个解析器,即使它应该检测到23/10/2014
和2014/10/23
之间的差异。apache DateUtils:解析具有多种模式的日期
它实际上解析日期,即使它是错误的,以至于我甚至无法捕捉到异常。我能怎么做?这是一个错误吗? (公地lang3-3.3.2)
下面的代码片段
package snippet;
import java.text.ParseException;
import java.util.Date;
import org.apache.commons.lang3.time.DateUtils;
public class TestDateFormat {
public static void main(String[] args) throws ParseException {
Date d = DateUtils.parseDate("23/10/2014T12:34:22",
new String[] {"yyyy/MM/dd'T'HH:mm:ss",
"dd/MM/yyyy'T'HH:mm:ss"});
System.out.println(d);
//returns Tue Apr 05 12:34:22 CET 29 which is wrong
}
}
完美!现在还不清楚,现在是 – 2014-11-03 14:54:33
不客气! – 2014-11-03 15:21:07
parseDateStrictly()不解析格式“MM/dd/yyyy:hh:mm:ss”的任何原因。尽管parseDate()适用于格式“MM/dd/yyyy:hh:mm:ss”。 – b22 2016-08-30 17:03:16