java 格式化當前日期有誤

來源:互聯網
上載者:User

今天做個上傳檔案的功能,並且要記錄當前的時間作為上傳時間,但是發現用java new Date() 並且格式化之後的時間有問題,無法存入資料庫,例如:

今天是2014年7月31日,時間是下午6點51分42秒,但輸出的結果卻是 2014-51-31 06:51:42,首先,月份肯定錯了;其次,下午6點最好能顯示成18點。



不知問題出在哪裡,檢查了一下格式化用的日期標識符:

DateUtils.asString(new Date(), "yyyy-mm-dd hh:mm:ss")
然後百度了一下,發現問題了:

    月份用的“mm”其實代表的分鐘,而不是月份,月份要用“MM”,並且要用24小時制的話是“HH”,“hh”是12小時制。

   具體規則如下:

[plain]  view plain copy 時間日期標識符:   yyyy:年   MM:月   dd:日    hh:1~12小時制(1-12)   [plain]  view plain copy HH:24小時制(0-23)   mm:分   ss:秒    S:毫秒    E:星期幾   D:一年中的第幾天   F:一月中的第幾個星期(會把這個月總共過的天數除以7)   w:一年中的第幾個星期   W:一月中的第幾星期(會根據實際情況來算)   a:上下午標識   k:和HH差不多,表示一天24小時制(1-24)。   K:和hh<span style="font-family: Arial, Helvetica, sans-serif;">差不多</span><span style="font-family: Arial, Helvetica, sans-serif;">,表示一天12小時制(0-11)。</span>   z:表示時區  
總結:日期操作經常用到,可是一直沒有很熟練地掌握,說明不夠重視。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.