有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

当使用DateUtils类的parseDateStructive()方法时,java异常无法解析日期

获取以下代码的异常,如果我使用parseDate()方法,异常不会出现,我不明白原因是什么

Exception in thread "main" java.text.ParseException: Unable to parse the date: 03/22/2012:00:00:00 at org.apache.commons.lang3.time.DateUtils.parseDateWithLeniency(DateUtils.java:336) at org.apache.commons.lang3.time.DateUtils.parseDateStrictly(DateUtils.java:286)

public static void main(String args[]) throws Exception
    {
        String testDate="03/22/2012:00:00:00";
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");    
        System.out.println(simpleDateFormat.format(DateUtils.parseDateStrictly(testDate, new String[]{"MM/dd/yyyy:hh:mm:ss","MM-dd-yyyy","MM/dd/yyyy",
               "yyyy-MM-dd hh:mm:ss","yyyy-MM-dd","yyyy-MM-dd HH:mm:ss"})));    
    } }

共 (1) 个答案

  1. # 1 楼答案

    您的格式模式必须为“MM/dd/yyyy:HH:MM:ss”

    小写hh if for Hour in am/pm (1-12)

    大写的HH代表Hour in day (0-23)

    有关更多信息,请参阅SimpleDateFormat的javadoc