2016-08-27 53 views
0

我試圖將我的日期是字符串形式迄今爲止不當導致字符串到日期轉換的java

我的代碼:

String dtStart = passedDate+" "+passedTme; // here my time is : 28/08/16 2:00 pm 
     System.out.println(dtStart); 
     SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy HH:mm a"); 
     try { 
      Date date = format.parse(dtStart); 
      System.out.println(date); // and result output is : Fri Aug 28 00:00:00 GMT+05:30 16 
     } catch (ParseException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 

上述正在28/08/16 2:00 pm和返回Fri Aug 28 00:00:00 GMT+05:30 16

任何人都可以指出爲什麼我的輸出在這裏不正確?

解決 要求的格式是這樣的:SimpleDateFormat("dd/MM/yy h:mm a")

+0

你想要什麼格式的日期? –

+0

類似於:28/08/16,2:00 PM @ThomCunningham –

+0

[Java字符串日期轉換]的可能重複(http://stackoverflow.com/questions/4216745/java-string-to-date-conversion) –

回答

2

任何人都可以指出爲什麼我的輸出是不正確這裏

您設置yyyy,但你通過16爲一年。要麼通過4位數年份或修復您的模式。

+1

謝謝你,現在很好。感謝你的努力 –

0

首先這將有助於瞭解你需要什麼樣的格式的輸出,但這裏的例子

Date and Time Pattern \t   Result 
 
"yyyy.MM.dd G 'at' HH:mm:ss z" \t 2001.07.04 AD at 12:08:56 PDT 
 
"EEE, MMM d, ''yy" \t   Wed, Jul 4, '01 
 
"h:mm a" \t     12:08 PM 
 
"hh 'o''clock' a, zzzz" \t   12 o'clock PM, Pacific Daylight Time 
 
"K:mm a, z" \t     0:08 PM, PDT 
 
"yyyyy.MMMMM.dd GGG hh:mm aaa" \t 02001.July.04 AD 12:08 PM 
 
"EEE, d MMM yyyy HH:mm:ss Z" \t Wed, 4 Jul 2001 12:08:56 -0700 
 
"yyMMddHHmmssZ" \t     010704120856-0700 
 
"yyyy-MM-dd'T'HH:mm:ss.SSSZ" \t 2001-07-04T12:08:56.235-0700 
 
"yyyy-MM-dd'T'HH:mm:ss.SSSXXX" \t 2001-07-04T12:08:56.235-07:00 
 
"YYYY-'W'ww-u" \t     2001-W27-3

列表您可以閱讀更多關於它here