无法将字符串转换为正确的日期格式

时间:2013-09-20 07:05:36

标签: java date

在我的HTML部分中,我有一个文本框,其中输入的日期为:10.09.2013 (dd.mm.yyyy)

我在servlet中所做的是:

 SimpleDateFormat formatter = new SimpleDateFormat("dd.mm.yyyy");
                String dateInString = invoiceData.getString("date");            
                Date date = formatter.parse(dateInString);
                System.out.println(date);

系统打印:Thu Jan 10 00:09:00 EET 2013并在oracle数据库内插入10-SEP-2013

请帮帮我!我正在处理它大约2个小时,我真的找不到转换它的方法并将其正确插入我的数据库。我知道我错过了一些非常小的东西,但我无法发现它。

我正在使用Jboss 7.1服务器。

5 个答案:

答案 0 :(得分:2)

new SimpleDateFormat("dd.MM.yyyy");

而不是

new SimpleDateFormat("dd.mm.yyyy");

mm代表Minutes。 MM代表月

看看date format

答案 1 :(得分:1)

mm代表分钟。 您需要在模式中使用MM才能获得月份。

答案 2 :(得分:1)

分钟为

mm,月份为MM。将格式更改为dd.MM.yyyy以获取正确的日期。 更改您的代码如下:

SimpleDateFormat formatter = new SimpleDateFormat("dd.MM.yyyy");
                String dateInString = invoiceData.getString("date");            
                Date date = formatter.parse(dateInString);
                System.out.println(date);

答案 3 :(得分:1)

使用以下格式

new SimpleDateFormat("dd.MM.yyyy");

答案 4 :(得分:1)

mm用于分钟,MM用于

所以你需要改变:

new SimpleDateFormat("dd.MM.yyyy");
相关问题