2013-11-25 31 views
2

嗨,我有以下類格式日期:時間和第二個問題顯示1:10改爲13:10

public static final String DATE_DDMMMMYYHHMM_PATTERN = "dd MMMM yyyy, hh:mm"; 


     public static String formatDate(Date date , String pattern) { 
      SimpleDateFormat sdf = new SimpleDateFormat(pattern); 
      String formatDate = ""; 
      if(date != null) { 
       formatDate = sdf.format(date); 
      } 
      return formatDate; 
     } 

我的單元測試顯示如下:

@Test 
public void testDateFormat(){ 

     DateTime dateTime = new DateTime(2013, 11, 01, 13, 10, 00, 00); 
     Date date = dateTime.toDate(); 
     Assert.assertEquals("01 November 2013, 13:10", Main.formatDate(date,Main.DATE_DDMMMMYYHHMM_PATTERN)); 


} 

雖然我已定義時間和秒爲13:10在我的測試中顯示爲2013年11月1日,01:10。任何建議請我能做些什麼,以便時間和秒可以顯示爲13:10

預先感謝任何幫助

+3

'hh'對'HH'。 –

回答

1

hh您小時格式更改爲HH

public static final String DATE_DDMMMMYYHHMM_PATTERN = "dd MMMM yyyy, HH:mm"; 

根據docs

h - Hour in am/pm (1-12) 
H - Hour in day (0-23) 
1

試試這個:

public static final String DATE_DDMMMMYYHHMM_PATTERN = "dd MMMM yyyy, HH:mm"; 

您需要更改HH HH到

HH格式表示HOUR(0-23)的時間,而H H代表它1-12 am/pm格式

同時檢查Oracle docs參考。

相關問題