将字符串转换为日期-JAVA

时间:2016-08-23 12:03:14

标签: java

我正在尝试将字符串转换为我的jdbc程序的日期。我尝试了以下方法

        DateFormat Formatter=null;
        Date convertedDate=null;
        Formatter=new SimpleDateFormat("DD-MMM-YYYY",Locale.ENGLISH);
        try {
            convertedDate=(Date)Formatter.parse(date);
        } catch (ParseException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        java.sql.Date sqlDate=new java.sql.Date(convertedDate.getTime());
        System.out.println(date);
        System.out.println(convertedDate);

我面临的问题是,例如,如果我传递'30 -NOV-2001'作为参数,当我使用DateFormat将其转换为Date并将其存储在convertedDate中时,我得到“Sun Dec 31 00:00 :00 IST 2000“作为输出显然是错误的。所以请帮我解决这个问题。

1 个答案:

答案 0 :(得分:2)

您需要使用"dd-MMM-yyyy"

 DateFormat Formatter=null;
        Date convertedDate=null;
        Formatter=new SimpleDateFormat("DD-MMM-YYYY",Locale.ENGLISH);
        try {
            convertedDate=(Date)Formatter.parse(date);
        } catch (ParseException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        java.sql.Date sqlDate=new java.sql.Date(convertedDate.getTime());
        System.out.println(date);
        System.out.println(convertedDate);

D表示一年中的一天 d表示每月的日期

查看 Oracle docs 了解更多信息