2012-09-26 87 views
0

我必须从整个日期得到时间从整个日期获取时间

例如时间= 11:00:00从日期2012-09-01 11:00:00.0

我尝试下面的代码片段,但得到的错误Error : Unparseable date: "2012-9-1.13.30. 0. 0"

DateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); 
Date date = inputFormat.parse(iResultSet1.getString(i)); 
DateFormat outputFormat = new SimpleDateFormat("hh:mm:ss"); 
String outputString = outputFormat.format(date); 

编辑:现在我只得到了日期,而不是我想只有时间

       if (iResultSet1.getDate(i) != null) { 
          Date date = iResultSet1.getDate(i); 

          System.out.println("date-->" + date); 
          // Format date into output format 
          DateFormat outputFormat = new SimpleDateFormat(
            "HH:mm:ss"); 
          String outputString = outputFormat.format(date); 

          // System.out.println("date1-->"+date1); 
+0

你的数据看起来不像“yyyy-MM-dd hh:mm:ss”那里有所有这些点 – Thilo

+1

为什么你的日期格式是“2012-9-1.13.30。 0“,当你期待它是”yyyy-MM-dd hh:mm:ss“? – moeTi

+0

你从哪里得到这个错误?似乎是第二行?你检查了iResultSet1.getString(i)返回的内容吗? – Prasanna

回答

0

我西港岛线建议,在这种情况下,而这样做在Java解析和操作改变你的SQL语句格式并且仅返回日期作为

SELECT TIME_FORMAT(NOW(), '%H:%i:%s'); 
0

你可能会检索您的来自数据库(iResultSet1.getString(i))的日期和问题是,你得到错误的格式,即2012-9-1.13.30。 0. 0.要么更改日期格式的数据库或使用:

Date date = iResultSet1.getDate(i); 

,而不是

DateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); 
Date date = inputFormat.parse(iResultSet1.getString(i)); 
+0

我试过getDate(),现在我没有得到任何错误,但没有时间,我得到的日期,即2012-09-01 – Edward

+0

请发布什么样的字段在数据库中。如果是时间戳,然后使用'时间戳tst = iResultSet1.getTimestamp(ⅰ);' –