设置时间到00:00:00不起作用 - java

时间:2016-02-18 16:04:50

标签: java

我想设置包含新当前日期和时间00:00:00的字符串。 我编写了以下代码,但时间设置为Private Sub search_txt_KeyDown(KeyCode As Integer, Shift As Integer) If (KeyCode = vbKeyReturn) Then filterResults (Me.search_txt.Value) Me.search_txt.SetFocus End If End Sub

12:00:00

我很想知道为什么代码不起作用,或者,另一种方法是将时间设置为Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); String today1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"). format(calendar.getTime())

1 个答案:

答案 0 :(得分:9)

您已使用the format characters hh,这是基于12小时或上午/下午的小时计划。

  

h上午/下午(1-12)12号小时

你已经打印了凌晨12:00,没有" am"。将时间设置为午夜,但使用您的格式"yyyy-MM-dd hh:mm:ss"时,输出最多会让人感到困惑。

您可以执行以下任一操作:

切换到资本" H"根据您的要求切换到24小时制的字符:

  

H小时(0-23)0号

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

输出:

2016-02-18 00:00:00

或者你可以添加" a"格式字符以添加am / pm指定。

  

Am / pm标记文本PM

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

输出:

2016-02-18 12:00:00 AM