簡體   English   中英

日期轉換從12:00:00到00:00:00 java

[英]Date conversion from 12:00:00 to 00:00:00 java

我想轉換:

 Tue Mar 28 12:00:00 IST 2016 time format
     INTO
 Tue Mar 28 00:00:00 IST 2016

我該怎么做?

=================
實際上在數據庫中,我的日期以“Tue Mar 28 00:00:00 IST 2016”的格式保存,我想使用此日期獲取此記錄。但我的以下代碼

Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.set(Calendar.HOUR, 0);
        calendar.set(Calendar.MINUTE, 0);
        calendar.set(Calendar.SECOND, 0);
        calendar.clear(Calendar.MILLISECOND);
        return calendar.getTime();

但是這給了我2016年12月2日星期二2016年12月12日 ,而我想要2016年 3月28日00:00:00 ,那么它將與數據庫一相同,並將獲取。

你需要Calendar.HOUR_OF_DAY常量,它用於24小時制,而不是Calendar.HOUR

Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.HOUR_OF_DAY, 0); // <-- here
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.clear(Calendar.MILLISECOND);

您可以使用calendar添加12個小時的date對象,例如:

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date date = format.parse("2016-03-28");
System.out.println(date);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.HOUR, 12);
System.out.println(calendar.getTime());

我認為OP希望將24H時間格式化為12H。

嘗試這樣的事情:

SimpleDateFormat formatDate = new SimpleDateFormat("hh:mm a");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM