2017-02-11 224 views
-3

我想以此格式獲取日期和時間。 「2017-02-05 20:20:03」。
我用下面的代碼來得到結果。
但它沒有解決。以24小時格式顯示時間

System.out.println(new SimpleDateFormat("yyyy-mm-dd HH:mm:ss").format(new Date())); 
+0

爲* 「沒有工作」 *應該是哪裏出了問題的描述?據我所知,你有24小時的時間,所以你的問題是什麼? *([krock guess below](http://stackoverflow.com/a/42172475/5221149),但你的問題描述很糟糕)* – Andreas

+0

注意:你的例子'2017-02-05'中的具體日期大約爲一週在這張貼的時候過去。使用無參數構造函數構造一個日期,即新的Date()會給你當前的日期/時間。 – krock

回答

0

查看date and time patterns表;月份大寫M,分鐘較低m。所以你的日期部分應該是這樣的:yyyy-MM-dd

SimpleDateFormat在你的代碼應該是這樣的:

new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") 

你可以從表中上面的鏈接看到,H爲24小時的時間,所以這是正確的。你有沒有檢查過你的jvm運行時區?

+0

感謝您的注意。但結果仍然如此顯示。 「2017-02-11 10:42:43」。我想要24格式的時間。 –

+0

'new Date()'會爲當前時間創建一個新的日期對象。您正在使用的[SimpleDateFormat構造函數](http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html#SimpleDateFormat(java.lang.String))將使用默認語言環境。 – krock

+0

感謝您的幫助 –

0

您的直接問題是您使用mm兩次。 MM是一個月。

此作品在Java中8

String dt = DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss").format(LocalDateTime.now); 

2017-02-10 23:20:11

相關問題