在我的應用程序中,我允許我的用戶輸入一些日期,我應該保存在數據庫中。現在,由於我的一些應用程序用戶位於全球不同的位置,並且每個用戶都有自己的日期/時間格式,我想從他們接受任何日期格式,然後將這些格式更改爲固定格式,然後我可以將其保存在數據庫中。Java日期格式問題
然而,我現在的問題是,我試圖從用戶輸入到我的應用程序格式更改日期fromat時得到一個錯誤,下面是我目前正在與
實體領域工作的代碼:
@Temporal(TemporalType.TIMESTAMP) @Column(name="DDATE", nullable=false, unique=false) private Date dDate;
控制器代碼保存在DB:
Date rDate, dDate; String Date1 = request.getParameter("Date1"); String Date2 = request.getParameter("Date2"); //Here the date get display for example as 01/29/2014 (i.e. MM/DD/YYYY) System.out.println("Date1:: "+ Date1); System.out.println("Date2:: "+ Date2); SimpleDateFormat parseRDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat parseDDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { //#########Crashes in the next two lines#########... rDate = (Date)parseRDate.parse(Date1); dDate = (Date)parseDDate.parse(Date2); } catch (ParseException e) { e.printStackTrace(); }
那麼有人可以請建議我如何格式化我的用戶輸入的任何日期到應用程序的靜態日期格式?
感謝
預期的格式('YYYY-MM -dd HH:mm:ss')與實際值('01/29/2014')不符。嘗試使用'MM/dd/yyyy'作爲格式代替... – MadProgrammer
沒有通用的「找出用戶的意思」日期解析功能。您需要檢查用戶的區域設置並選擇預期的格式。如果01/02/2013是1月2日或2月1日,那麼java應該如何猜測? – Affe
@Affe如果我將日期分隔爲MM和DD以及YYYY編碼/解碼日期,換句話說,這將允許使用用戶輸入的任何可能的日期格式嗎?如果是,是否有Java方法來編碼/解碼日期? – MChan